我有一個將數據提交給數據庫的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