$ _POST无法在PHP中运行

时间:2011-08-16 06:51:29

标签: php

<html>
<head><title>HEllo</title></head>
<body>
<input type="text" name="id">
<input type="text" name="name">
<input type="text" name="address">
<input type ="submit" name = "s" value = "Employee">
<?php
$link =mysql_connect('localhost','root') or die("Failed");
mysql_select_db("gagan",$link) or die("database not exists");

if($_POST['s']=="Employee")
{
print "g";
$id = mysql_real_escape_string($_POST['id']);
$name = $_POST['name'];
$address = $_POST['address'];
print "hi";
$update = "update emp set name = $name, address=$address where id = $id";
$result = mysql_query($update,$link);
print "Hello";
if($result)
{
    print "Updated";
}   
else{   
    print "$update";
}
}

?>
</body>
</html>

当我运行此代码时会产生通知,上面的代码无效。

  

注意:第12行的C:\ wamp \ www \ 1.php中的未定义索引:

我的代码中有什么问题可以告诉我?

4 个答案:

答案 0 :(得分:5)

您忘记了表单标记。

<form action="yourform.php" method="POST">

答案 1 :(得分:1)

您需要确保首先设置数组成员。尝试使用isset($_POST['s'])的结果以确保在尝试访问它之前设置它。

答案 2 :(得分:0)

您需要将方法设置为发布的表单tage。

答案 3 :(得分:0)

主要问题(除了缺少的表单标记)是程序流继续到尝试保存数据的部分,即使表单尚未提交。在尝试保存数据之前,您必须检查表单是否已提交,或者如果您将数据保存部件移动到其自己的脚本,则更容易。

您还有一个无效的SQL查询,但这是另一回事:)