<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中的未定义索引:
我的代码中有什么问题可以告诉我?
答案 0 :(得分:5)
您忘记了表单标记。
<form action="yourform.php" method="POST">
答案 1 :(得分:1)
您需要确保首先设置数组成员。尝试使用isset($_POST['s'])
的结果以确保在尝试访问它之前设置它。
答案 2 :(得分:0)
您需要将方法设置为发布的表单tage。
即
答案 3 :(得分:0)
主要问题(除了缺少的表单标记)是程序流继续到尝试保存数据的部分,即使表单尚未提交。在尝试保存数据之前,您必须检查表单是否已提交,或者如果您将数据保存部件移动到其自己的脚本,则更容易。
您还有一个无效的SQL查询,但这是另一回事:)