我知道有這個話題在網站上公佈各種提供的解決方案中是否存在記錄,我檢查(並用),其中的一些解決方案。儘管如此,我不明白爲什麼我的代碼不起作用,可能是因爲我是一個關於PHP和SQL編程的入門者;-(檢查數據庫
該代碼應該添加一個包含3個字段的記錄(FirstName ,姓氏,年齡)表中的(人),但只有在記錄不存在,因此在執行上存在的名字和姓氏字段的支票。但在現有記錄的情況下,如果語句的條件似乎仍是真正的和現有記錄的副本仍然是插入到數據庫中。我該怎麼提前幫助錯過?
感謝。
//check whether item does not exist in database
$query ="SELECT FirstName,LastName FROM persons
WHERE FirstName='$data[1]' AND LastName='$data[2]'";
$result = mysql_query($query);
if($result && mysql_num_rows($result) > 0)
{
echo " <br> record exist";
}
else
{
$theage = (int)$data[3]; //! for conversion of integer values
$sql="INSERT INTO persons (FirstName, LastName, Age)
VALUES ('$data[1]','$data[2]','$theage')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
}
'SELECT COUNT(*)FROM人員 WHERE姓= '$數據[1]' AND名字= '$數據[2]'' – NINCOMPOOP
@TheNewIdiot OP使用'mysqli'和'mysql'都爲每個查詢。 –
爲什麼你需要先檢查? – Strawberry