人们
我正在尝试使用相同的脚本来批准将联系人添加到数据库中,但如果主键 (id) 已经存在,则查询将进行更新。所以我设置了一个 INSERT INTO .... ON DUPLICATE KEY UPDATE 查询,如下所示:
$resultsc = mysql_query("INSERT INTO $contact (id,First,Last,Companyid,userid,Title,PrimaryPhone,SecondaryPhone,PrimaryEmail,SecondayEmail,inserted) VALUES('$id','$first','$last','$companyid','$userid','$title','$phone1','$phone2','$email1','$email2',NOW()) ON DUPLICATE KEY UPDATE (First,Last,Companyid,userid,Title,PrimaryPhone,SecondaryPhone,PrimaryEmail,SecondayEmail) VALUES ('$first','$last','$companyid','$userid','$title','$phone1','$phone2','$email1','$email2') WHERE id='$id'");
if(!$resultsc)
{
echo "<font face='Verdana' size='2' ><center>You have successfully approved this user for access to this site.</center><br><center><input type='button' value='Back' onClick='history.go(-2)'></center>"; die();
}
else
{
echo "<font face='Verdana' size='2' ><center>You have not updated this contact for this site.</center><br><center><input type='button' value='Back' onClick='history.go(-2)'></center>";
}
我没有收到任何错误,但数据库没有更新或插入新记录。所以我检查了我的“$contacts”变量,以确保它指向正确的表,而且确实如此。如果我只是单独进行插入,那么脚本工作正常。但是当我做这个查询时,什么也没有发生。我想知道它有什么问题,或者我应该只使用 if/else 并选择检查现有密钥?