修改数据库中的记录(二)
如果不修改信息,输入项中显示的是默认信息。如果对这些信息做了修改,表单元将把修改后的值传递给另一个脚本程序editdb.php3,从而对数据库中的表进行修改。
脚本editdb.php3:
mysql_connect() or die ("Problem connecting to DataBase");
$query = "update tbl set
idx='$idx',UserName='$UserName',LastName='$LastName',FreeText='$FreeText'
where
idx='$idx'";
$result = mysql_db_query("example", $query);
$query = "SELECT * FROM tbl";
$result = mysql_db_query("example", $query);
if ($result) {
echo "Found these entries in the database:
";
echo "
idx |
User Name |
Last Name |
Free Text |
";
while ($r = mysql_fetch_array($result)) {
$idx = $r["idx"];
$user = $r["UserName"];
$last = $r["LastName"];
$text = $r["FreeText"];
echo "
$idx |
$user |
$last |
$text |
";
}
echo "
";
} else {
echo "No data.";
}
mysql_free_result($result);
include ('links.x');
?>
可以看出,代码中重要的部分是下面这一段:
$query = "update tbl set
idx='$idx',UserName='$UserName',LastName='$LastName',FreeText='$FreeText'
where idx='$idx'";
其中对数据进行修改的语法格式与在MySQL部分中讲到的是一样的。程序将对表中idx=$idx的行进行修改,如果有多个行满足这个条件,它们都将被修改。如果想让条件更具体些,可以将where条件改成:
$query = "update tbl set idx='$idx',UserName='$UserName',
LastName='$LastName',FreeText='$FreeText' where idx='$idx'
and UserName='$UserName' and LastName='$LastName' and
FreeText='$FreeText'";
这个语句将对所有的数据都进行检查看看是否满足条件,而不仅仅是idx。
作者: 新浪来源: Internet日期: 2008-01-01