Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php确定已传递INSERT IGNORE?_Php_Mysql - Fatal编程技术网

如何使用php确定已传递INSERT IGNORE?

如何使用php确定已传递INSERT IGNORE?,php,mysql,Php,Mysql,我想检查一下,如果这个代码 mysql_query("INSERT IGNORE INTO `popupip` (`userid` ,`ownerid`,`ip` ,`date` ,`ref`) VALUES ('$secid', $ownerid, '$date' , '$ref');" ); 已经插入到表中,做一些工作 if (condition) { // is not duplicated and I should pay to him/her } else

我想检查一下,如果这个代码

mysql_query("INSERT IGNORE 
    INTO `popupip` (`userid` ,`ownerid`,`ip` ,`date` ,`ref`) 
    VALUES ('$secid', $ownerid, '$date' , '$ref');"
);
已经插入到表中,做一些工作

if (condition) {
    // is not duplicated and I should pay to him/her
} else {
    // is duplicated an I shouldn't pay to him/her
}
对于
条件
,我应该输入什么


注意:
userid
ownerid
ip
date
的组合是唯一的

mysql\u受影响的行
函数可以帮助您做到这一点。您可以将mysql\u infected\u rows()置于您的条件中,以检查是否有任何行受到影响。

您可以使用并检查插入的行是否不止一行。

但是正如您将在链接中看到的,
mysql.*
函数已被弃用。您应该使用及其方法。

这应该包括SQL错误和重复条目

  if(mysql_query($sql_insert,$link) or die("Insertion Failed:" . mysql_error()))
    {
          if(mysql_affected_rows($link)==1){
           //insert took place
           }else{
           //no insert
           }    
    }

我有一个关于种族状况的巨大数据库。我仍然可以使用mysql\u受影响的\u行吗?如果它仅用于此查询,我想您可以。但如果您想得到更完整的答案,可以将此添加到问题中。请参阅和。