php / שיעור 2 / כולם יחד

שיעור 2


כולם יחד


נסיים את השיעור הזה ע"י כך שנשים הכל יחד בעמוד אחד שיכול להוסיף, לערוך, ולהחסיר הכנסות ממאגר המידע. זו הרחבה של הדברים שלמדנו עד כה ומהווה חזרה טובה. בואו נראה.

<html>


<body>

<?php

$db = mysql_connect("localhost", "root");

mysql_select_db("mydb",$db);

if ($submit) {

// here if no ID then adding else we're editing

if ($id) {

$sql = "UPDATE employees SET
first='$first',last='$last',address='$address',position=
'$position ' WHERE id=$id";

} else {

$sql = "INSERT INTO employees
(first,last,address,position) VALUES
('$first','$last','$address','$position')";

}

// run SQL against the DB

$result = mysql_query($sql);

echo "Record updated/edited!<p>";

} elseif ($delete) {

// delete a record

$sql = "DELETE FROM employees WHERE id=$id";

$result = mysql_query($sql);

echo "$sql Record deleted!<p>";

} else {

// this part happens if we don't press submit

if (!$id) {

// print the list if there is not editing

$result = mysql_query("SELECT * FROM
employees",$db);

while ($myrow = mysql_fetch_array($result)) {

printf("<a href=\"%s?id=%s\">%s %s</a> \n",
$PHP_SELF, $myrow["id"], $myrow["first"],
$myrow["last"]);

printf("<a href=\"%s?id=%s&delete=yes\">
(DELETE)</a><br>",
$PHP_SELF, $myrow["id"]);

}

}

?>

<P>

<a href="<?php echo $PHP_SELF?>">ADD A RECORD</a>

<P>

<form method="post" action="<?php echo $PHP_SELF?>">

<?php

if ($id) {

// editing so select a record

$sql = "SELECT * FROM employees WHERE id=$id";

$result = mysql_query($sql);

$myrow = mysql_fetch_array($result);

$id = $myrow["id"];

$first = $myrow["first"];

$last = $myrow["last"];

$address = $myrow["address"];

$position = $myrow["position"];

// print the id for editing

?>

<input type=hidden name="id" value="<?php echo $id ?>">

<?php

}

?>

First name:<input type="Text" name="first" value="<?php echo $first ?>"><br>

Last name:<input type="Text" name="last" value="<?php echo $last ?>"><br>

Address:<input type="Text" name="address" value="<?php echo $address ?>"><br>

Position:<input type="Text" name="position" value="<?php echo $position ?>"><br>

<input type="Submit" name="submit" value="Enter information">

</form>

<?php

}

?>

</body>

</html>

זה נראה מסובך, אבל זה לא באמת כזה. הסקריפט מחולק לשלושה חלקים. ביטוי ה- ()if הראשון בודק האם נלחץ כפתור ה-submit, ואם כן, הוא בודק האם קיים משתנה id$. אם לא, זה אומר שאנחנו מוסיפים רישום. אחרת, אנחנו עורכים רישום.

עכשיו נראה האם קיים משתנה בשם delete$. אם כן, אנחנו מוחקים את הרישום.
שימו לב שבביטוי ה- ()if הראשון חפשנו משתנה שהגיע בתור POST ועכשיו אנחנו מחפשים אחד שהוא חלק מ-GET.

לסיום, ניקח את פעולת ברירת המחדל שמציגה את רשימת הפועלים ואת הטופס.
שוב, נבדוק את קיומו של המשתנה id$ אם הוא קיים, אנחנו מתשאלים את מאגר המידע ומבקשים להציג את הרישום הרלוונטי. אחרת, נציג טופס ריק.

עכשיו שמנו את כל מה שאנחנו יודעים בסקריפט אחד. השתמשנו בלולאות מסוג ()while ובביטויי ()if, והרצנו את הביטויים הבסיסיים של SQL - SELECT, INSERT, UPDATE ו-DELETE. בסופו של דבר ראינו איך אנחנו יכולים להעביר מידע מעמוד אחד לשני תוך שימוש ב-URLים ובתשומת טפסים.

בשיעור 3 נראה איך אנחנו יכולים להפוך את העמוד שלנו לחכם יותר.



עמוד הבא: שעור 3 - מקום לכל דבר >>




הקדמה
שעור 1
הקדמה PHP ו-MySQL
התקנת MySQL
התקנת PHP
הסקריפט הראשון שלכם
הטענת מאגר המידע
שליפה מחדש
שעור 2
לולאות
השארו מיודעים
קישור חכם
הוסיפו כמה טפסים
הפיכת טפסים לחכמים
כולם יחד >
שעור 3
מקום לכל דבר
אימות פשוט
אמות לא כל כך פשוט
פונקציות
עדות לאום