我已经创建了一个HTML表单,你可以删除的工作人员只是把ID是直接连接到数据库。
当我第一次把ID,它会删除它,如果它存在,但即使它不存在,它仍然会说,它刚刚被删除,即使它从来没有存在。
下面是它的PHP部分
<?php
if(isset($_POST['removeemployees']))
{
$error = "";
if(!isset($_POST['employeeID']))
{
$employeeID = "";
}
else
{
$employeeID = $_POST['employeeID'];
}
if(empty($employeeID))
{
// Empty Employee
$error .= "employeeID Cannot be Empty";
}
//echo "Your Firstname is : $firstname and last name is : $lastname";
if($error == "")
{
$sql = "DELETE FROM employees WHERE ID = $employeeID ";
$result = mysqli_query($con, $sql);
if(mysqli_affected_rows($result) > 1)
{
echo "Record Deleted";
}
else
{
echo "Error Deleting record:".mysqli_error($con);
}
}
else
{
echo $error;
}
}
?>
这是它的HTML部分,它很简单,工作正常。
<div class="removeemployee">
<h3> Remove Employees </h3>
<p>Employee ID</p>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST">
<input type="text" name="employeeID"><br>
<br><input type="submit" name="removeemployees" value="Submit Information">
</form>
</div>
我试着让它像这样工作:如果ID存在,您可以删除它,如果不存在,它应该说,这个ID是不存在的数据库或类似的东西。起初,我认为我必须收集所有的数据从Mysql然后比较它与输入的ID,并从那里去,但我不确定。
1条答案
按热度按时间kzipqqlq1#
没有要删除的行不是错误。
如果有错误,
mysqli_execute()
返回false
,而不是结果对象。mysqli_execute()
仅在查询是SELECT
(或返回结果集的某一其它类型)时返回结果对象;对于修改查询,它只返回true
或false
。mysqli_affected_rows()
的参数必须是连接,而不是返回值。我还展示了如何使用预准备语句重新编码以防止SQL注入。