|
六、完整的程序
在本课结束前,我们要把所有东西加入到一个程序中,使它具有增加、编辑修改、删除记录的功能。这是前面所有内容的一个延伸,也可以作为极好的复习方法。看看下面的程序。
<html> <body> <?php $db = mysql_connect(\"localhost\", \"root\"); mysql_select_db(\"mydb\",$db); if ($submit) { // 如果没有ID,则我们是在增加记录,否则我们是在修改记录 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\')\"; } // 向数据库发出SQL命令 $result = mysql_query($sql); echo \"记录修改成功!<p>\"; } elseif ($delete) { // 删除一条记录 $sql = \"DELETE FROM employees WHERE id=$id\"; $result = mysql_query($sql); echo \"记录删除成功!<p>\"; } else { // 如果我们还没有按submit按钮,那么执行下面这部分程序 if (!$id) { // 如果不是修改状态,则显示员工列表 $result = mysql_query(\"SELECT * FROM employees\",$db); while ($myrow = mysql_fetch_array($result)) { printf(\"<a href=\\"%s?id=%s\\">%s %s</a> \n\", $PATH_INFO, $myrow[\"id\"], $myrow[\"first\"], $myrow[\"last\"]); printf(\"<a href=\\"%s?id=%s&delete=yes\\">(DELETE)</a>< br>\", $PATH_INFO, $myrow[\"id\"]); } } ?> <P> <a href=\"<?php echo $PATH_INFO?>\">ADD A RECORD</a> <P> <form method=\"post\" action=\"<?php echo $PATH_INFO?>\"> <?php if ($id) { // 我们是在编辑修改状态,因些选择一条记录 $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\"]; // 显示id,供用户编辑修改 ?> <input type=hidden name=\"id\" value=\"<?php echo $id ?>\"> <?php } ?> 名:<input type=\"Text\" name=\"first\" value=\"<?php echo $first ?>\"><br> 姓:<input type=\"Text\" name=\"last\" value=\"<?php echo $last ?>\"><br> 住址:<input type=\"Text\" name=\"address\" value=\"<?php echo $address ?>\"><br> 职位:<input type=\"Text\" name=\"position\" value=\"<?php echo $position ?>\"><br> <input type=\"Submit\" name=\"submit\" value=\"输入信息\"> </form> <?php } ?> </body> <`/html>
这段程序看起来很复杂,但实际上并不难。程序主要有三个部分。第一个if()语句检查我们是否已经按下了那个“输入信息”的数据提交按钮。如果是,程序再检查$id是否存在。如果不存在,那我们就是在增加记录状态,否则,我们是在修改记录状态。
接下来我们检查变量$delete是否存在。如果存在,我们是要删除记录。注意,第一个if()语句检查的是用POST方法发送来的变量,而这一次我们检查的是GET方法中传递过来的变量。
最后,程序默认的动作是显示员工列表和表格。同样,我们要检查变量$id是否存在。如果存在,我们就根据它的值检索出相应的记录显示出来。否则,我们会显示一个空的表格。
现在,我们已经把所学的东西全部都放在一个程序里头了。我们用到了while()循环,用到了if()语句,并且执行了全部的SQL基本操作 - SELECT、INSERT、UPDATE以及DELETE。另外,我们也知道如何在不同的网页之间通过URL和表格输入来互相传递信息。
在第三课里,我们要学习如何为网页增加智能化处理能力。
上一篇:PHP/MySQL三日通(5) 下一篇:PHP/MySQL三日通(7)
|