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