我知道此站点上发布了针对此主题的各种提供的解决方案,并且我检查了(并使用了)其中一些解决方案。尽管如此,我还是不明白为什么下面的代码不起作用,可能是因为我是 php 和 sql 编程的初学者;-(
该代码应该在表(人员)中添加具有 3 个字段(名字、姓氏、年龄)的记录,但前提是该记录尚不存在。因此,将对现有的 FirstName 和 Lastname 字段进行检查。但是在现有记录的情况下,if 语句的条件似乎仍然为真,并且现有记录的副本仍然插入到数据库中。我想念什么?
在此先感谢您的帮助。
//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));
}
}