mysql_affected_rows无效

时间:2012-05-02 04:11:00

标签: php mysql

我在查询中使用mysql_affected_rows但是它似乎返回false,即使查询确实执行了所以我有点困惑....

这就是我所拥有的:

$check = mysql_query("DELETE FROM $table 
         WHERE name = '".$darray[0]."' AND 
         password = '".$darray[1]."' AND uid = '$uid' 
         AND validation = '22'") 
         or die(mysql_error());


if(mysql_affected_rows($check)>0){
    echo 1;
    exit;

} else {
 echo 'Less than one!';
 exit;
}

任何想法为什么它说少于一个 - 即使我的查询确实删除了行?

3 个答案:

答案 0 :(得分:3)

mysql_affected_rows()获取链接标识符(即连接资源),而不是结果。

答案 1 :(得分:2)

mysql_affected_rows接受连接链接,而不是查询。您可以将该参数留空,它将引用在该连接上执行的最后一个查询。

答案 2 :(得分:2)

<强>解决:

错误是mysql_affected_rows()不期望查询。

此处有更多信息:http://php.net/manual/es/function.mysql-affected-rows.php

$check = mysql_query("DELETE FROM $table 
         WHERE name = '".$darray[0]."' AND 
         password = '".$darray[1]."' AND uid = '$uid' 
         AND validation = '22'") 
         or die(mysql_error());


if(mysql_affected_rows() >0){
    echo 1;
    exit;

} else {
 echo 'Less than one!';
 exit;
}