打印

PHP/MySQL三日通-第二天(四)

PHP/MySQL三日通-第二天(四)

六、完整的程序



  在本课结束前,我们要把所有东西加入到一个程序中,使它具有增加、编辑修改、删除记录的功能。这是前面所有内容的一个延伸,也可以作为极好的复习方法。看看下面的程序。





 
$#@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和表格输入来互相传递信息。

  在第三课里,我们要学习如何为网页增加智能化处理能力。


转自:  http://edu.chinaz.com

TOP