如果mysql_num_rows等于ZERO则不起作用

Ali*_*der 0 php mysql

我正在使用此代码计算行并尝试执行IF num rows equals to ZERO do INSERT if not UPDATE但它不起作用.

当我使用==operator时没有任何反应.如果我使用>=操作符脚本插入值,但在每次刷新时运行插入查询,并且值在MySQL表中重复.

这是代码:

$isexist = mysql_query("select count(*) from wcddl_filehosts where downloadid = '".$download[id]."'");

if (mysql_num_rows($isexist) == 0) {
mysql_query("insert into wcddl_filehosts (downloadid, rs) values ('".$download[id]."','$totalRS')");
} else {
mysql_query("update wcddl_filehosts set rs = '$totalRS' where downloadid = '".$download[id]."'");
}
Run Code Online (Sandbox Code Playgroud)

这有什么问题?

Chr*_*ris 8

Count将返回一个值,您无法计数然后调用mysql_num_rows.它是另一个.

你可以做到

$isExist = mysql_query("Select count(id) from ..."); 
$r = mysql_fetch_array($isExist);
if($r['COUNT(id)'] > 0){
//item exists
}else{
//item doesnt exist
}
Run Code Online (Sandbox Code Playgroud)

如果可选,您可以执行以下查询:

$isexist = mysql_query("select * from wcddl_filehosts where downloadid = '".$download[id]."'");
if(mysql_num_rows($isExists)>0){
//we have items
}else{
//we dont have items
}
Run Code Online (Sandbox Code Playgroud)