Isset检查表单提交不工作


Isset check for form submission not working

我写了一个函数来更新一条记录。表单显示所有正确的数据,但在编辑数据和提交表单之后,isset函数不起作用,记录也没有更新。需要一点帮助。谢谢。

/*函数编辑员工*/

function emp_edit()
}
global $link;   
$employeeid = $_GET['id'];
$query = "SELECT * FROM employees where employeeid='$employeeid'";
$result = mysqli_query($link, $query);
$row = mysqli_fetch_assoc($result);
$fname = $row['fname'];
$lname = $row['lname'];
$email = $row['email'];
$zip = $row['zip'];
print "<h3>Edit Employee Record</h3>";          
print "<form method='post' action='emp_maintenance.php'>
<br><input type='hidden' name='employeeid' value='$employeeid'>
<br><input type='text' name='fname' value='$fname'> First Name<br>
<br><input type='text' name='lname' value='$lname'> Last Name<br>
<br><input type='text' name='email' value='$email'> Email<br>
<br><input type='text' name='zip' value='$zip'> Zip Code<br>
<br><input type='submit' name='edit3' value='Update'><br>
</form>";
if(isset($_POST['edit3']))
{
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$email = $_POST['email'];
$zip = $_POST['zip'];
$query = "UPDATE employees SET fname='$fname', lname='$lname', email                                                             = '$email', zip = '$zip' WHERE employeeid = '$employeeid'";
mysqli_query($link, $query);
}
}

正如您已经发现的那样,您需要使用左括号而不是右括号。我想推荐的另一个方法是,在isset条件之后使用php函数is_empty("filed")。原因是,当有人更新表单一个更多的字段可以留下黑色,在这种情况下,你是"删除"的数据,当你覆盖表中的值与空字符串。