我有一个将数据提交给数据库的PHP代码,但是我想限制数据(如果数据已经存在)。我试过下面的代码,但总是插入数据而不检查存在。在将数据提交到MySql数据库之前检查是否存在
if(isset($_POST['submit'])){
$phone = $_POST['phone'];
$checkDataSql = "SELECT phone FROM lead WHERE phone=$phone" ;
$run = $conn->query($checkDataSql);
if ($run->num_rows > 0) {
header("location:add_lead.php?error=unsuccess");
}
else{
$phone = $_POST['phone'];
}
$name = $_POST['name'];
$email = $_POST['email'];
$gender = $_POST['gender'];
$treatment = intval($_POST['treatment']);
$date = date('Y-m-d');
$source = intval($_POST['source']);
$staff = intval($_POST['staff_id']);
$insertLead = "INSERT INTO lead
(`id`, `name`, `phone`, `email`, `gender_id`, `treatment_id`, `date`, `source_id`, `remark`, `staff_id`)
VALUES (NULL, '$name', '$phone', '$email', '$gender', '$treatment', '$date', '$source', '', '$staff')";
if ($conn->query($insertLead) === TRUE) {
echo "New record created successfully";
header("location:add_lead.php?submitted=successfully");
} else {
echo "Error: " . $insertLead . "<br>" . $conn->error;
}
}
什么不在这里工作,你的代码看起来没问题。如果只是退出标题,请参阅下面的答案。如果这没有解决,那么我有自己的想法,为什么你的代码可能会失败。 –
btw,'$ phone'的价值是什么?和这里的HTML表单在哪里? –
是的,Fred-ii,代码是好的,唯一的问题是使用'header()',使用下面的解决方案它工作,谢谢你的时间。 – Jayprakash