万卷书>>电脑书籍>>网页制作>>PHP>>PHP/MySQL 教程

WANJUANSHU.COM

PHP/MySQL教程(五)
五、修改数据


 

  在个教程中,我都把要执行的SQL语句放到一个变量($sql)中,然后才用mysql_query()来执行数据库查询。在调试时这是很有用的。如果程序出了什么问题,您随时可以把SQL语句的内容显示出来,检查其中的语法错误。


 

  我们已经学习了如何把数据插入到数据库中。现在我们来学习如何修改数据库中已有的记录。数据的编辑包括两部分:数据显示和通过表格输入把数据返回给数据库,这两部分我们前面都已经讲到了。然而,数据编辑还是有一点点不同,我们必须先在表格中显示出相关的数据。


 

  首先,我们回过头再看看第一课的程序代码,在网页中显示员工姓名。但是这次,我们要把数据显示在表格中。程序看起来象下面这样:


 

 


 

  <>

<>

<?php

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

mysql_select_db("mydb",$db);

if ($id) {

  
   // 查询数据库

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

   $result = mysql_query($sql);

   $myrow = mysql_fetch_array($result);

   ?>

   < method="post" action="<?php echo $PATH_INFO?>">

   < type=hidden name="id" value="<?php echo $myrow["id"] ?>">

   名:< type="Text" name="first" value="<?php echo
   $myrow["first"] ?>"><>

   姓:< type="Text" name="last" value="<?php echo
   $myrow["last"] ?>"><>

   住址:< type="Text" name="address" value="<?php echo
   $myrow["address"] ?>"><>

   职位:< type="Text" name="position" value="<?php echo
   $myrow["position"] ?>"><>

   < type="Submit" name="submit" value="输入信息">

   </form>

   <?php

} else {

  
   // 显示员工列表

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

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

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

   }

}

?>

</body>

</html>
 


 

  我们刚才是把字段内容写入到相应表格元素中的value属性里,这是相应简单的。我们再往前进一步,使程序可以把用户修改过的内容写回数据库去。同样,我们通过Submit按钮来判断是否处理表格输入内容。还要注意,我们用的SQL语句稍稍有些不同。


 

  <>

<>

<?php

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

mysql_select_db("mydb",$db);

if ($id) {

   if ($submit) {

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

     $result = mysql_query($sql);

    
     echo "谢谢!数据更改完成\n";

   } else {

    
// 查询数据库

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

     $result = mysql_query($sql);

     $myrow = mysql_fetch_array($result);

     ?>

     < method="post" action="<?php echo $PATH_INFO?>">

     < type=hidden name="id" value="<?php echo $myrow["id"] ?>">


名:< type="Text" name="first" value="<?php
    echo $myrow["first"] ?>"><>

    
     姓:< type="Text" name="last" value="<?php echo
     $myrow["last"] ?>"><>

    
     住址:< type="Text" name="address" value="<?php echo
     $myrow["address"] ?>"><>

    
     职位:< type="Text" name="position" value="<?php echo
     $myrow["position"] ?>"><>

    
     < type="Submit" name="submit" value="输入信息">

     </form>

<?php

}

} else {

  
   // 显示员工列表

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

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

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

   }

}

?>

</body>

</html>
 


 

  就是这样。在这个程序中已经包含了我们学过所大多数特性。您也已经看到,我们在一个if()条件判别语句中又加了一个if()语句,来检查多重条件。


 

  下面,我们要把所有东西全都加在一起,写出一个很好的程序来。

 
上一页 WanJuanShu.COM 下一页
WANJUANSHU.COM 万卷书