高级数据库技术 上一层 [软件下载] [累计得分] [教学论坛] [林定移教学辅助服务器] [关于林定移]

第二章4

第一章1 第二章1 第三章1


PHP/MySQL教程
第1节 while循环
第2节 if-else
第3节 第一个程序脚本
第4节 向服务器发送数据
第5节 修改数据
第6节 完整的程序

[第一章][第二章][第三章]

 

第4节 向服务器发送数据

现在我们从数据库读取数据已经没有太多困难了。但是怎么反过来向数据库发送数据呢?其实这不是PHP的问题。

首选,我们创建一个带有简单表格的网页。

<html>

<body>

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

名:<input type="Text" name="first"><br>

姓:<input type="Text" name="last"><br>

住址:<input type="Text" name="address"><br>

职位:<input type="Text" name="position"><br>

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

</form>

</body>

</html>

同样要注意$PATH_INFO的用法。就象我在第一课里讲到的,您可以在HTML代码中的任意位置使用PHP。您也会注意到,表格中的每一个元素都对应着数据库中的一个字段。这种对应关系并不是必须的,这么做只是更直观一些,便于您以后理解这些代码。

还要注意的是,我在Submit按钮中加入了name属性。这样我在程序中可以试探$submit变量是否存在。于是,当网页被再次调用时,我就会知道调用页面时是否已经填写了表格。

我应该指出,您不一定要把上面的网页内容写到PHP程序中,再返过来调用程序本身。您完全可以把显示表格的网页和处理表格的程序分开放在两个网页、三个网页甚至更多网页中,悉听尊便。放在一个文件中只是可以使内容更加紧凑而已。

那好,我们现在加入一些代码,来检查用户在表格中输入的内容。我会把用$HTTP_POST_VARS把所有查询参数变量都显示出来,这只不过是为了证明PHP确实把所有变量都传给了程序。这种方法是一个很有用的调试手段。如果您要想看全部的变量,可以用$GLOBALS


<html>

<body>

<?php

if ($submit) {

  
  // 处理表格输入

  while (list($name, $value) = each($HTTP_POST_VARS)) {

    echo "$name = $value<br>\n";

  }

} else{

  
  // 显示表格

  ?>

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

  名:<input type="Text" name="first"><br>

  姓:<input type="Text" name="last"><br>

  住址:<input type="Text" name="address"><br>

  职位:<input type="Text" name="position"><br>

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

  </form>

  <?php

} // end if,if结束

?>

</body>

</html>

程序现在运行正常,那我们现在就可以取到表格输入的内容,并把它们发送给数据库。


<html>

<body>

<?php

if ($submit) {

  
  // 处理表格输入

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

  mysql_select_db("mydb",$db);

  $sql = "INSERT INTO employees (first,last,address,position)
  VALUES ('$first','$last','$address','$position')";

  $result = mysql_query($sql);

  echo "Thank you! Information entered.\n";

} else{

  
  // 显示表格内容

  ?>

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

  
  名:<input type="Text" name="first"><br>

  
  姓:<input type="Text" name="last"><br>

  
  住址:<input type="Text" name="address"><br>

  
  职位:<input type="Text" name="position"><br>

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

  </form>



  <?php



} // end if,if结束



?>



</body>



</html>

您现在已经向数据库中插入数据了。不过还有很多完善的工作要做。如果用户没有填写某一栏怎么办?在需要填入数字的地方填了文字怎么办?或者填错了怎么办?

别担心。我们一步一步来。>>


如有关于本站点的问题或建议,请向lin@bnu.edu.cn发邮件。 版权所有(C) 2000-2020  林定移教学辅助服务器