我有一个MySql查询,我正在尝试检查我的PHP代码中是否有重复的条目,我正在尝试做这样的事情:
if(!$result)
{
$error_message = mysql_error();
$pos = strpos ( $error_message , 'Duplicate entry' );
if($pos === false)
{
... Do some error reporting...
但行$ error_message = mysql_error();似乎打破了它。有人会知道为什么会发生这种情况以及如何正确检测重复的错误消息,因为这对我来说是一个黑客攻击吗?
答案 0 :(得分:3)
您可以使用mysql_errno或mysqli_errno,并查找错误号1062,这是重复条目的错误号。
答案 1 :(得分:2)
你应该看一下MySQL INSERT IGNORE
的行为它会让你告诉MySQL你正在做一个可能有重复的插入,如果有的话,不要做任何事情。