我想获取一张图片的ID,即boostAmount-boostStart> total。目前,如果存在适当的图像,则可以使用。但是,如果没有任何适当的显示我会收到此错误。
查询无效:您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第1行的“ORDER BY RAND()LIMIT 1”附近使用正确的语法
$photoToGuess = mysql_query("SELECT photoID,id,total,boostStart,boostAmount,auth,photoUploadDate FROM photos WHERE (boostAmount !=0) AND ((boostAmount-boostStart)>total) AND (auth=2 OR auth=5 OR auth=7) ORDER BY RAND() LIMIT 1") or die("Invalid query: " . mysql_error());
$getphotoToGuess = mysql_fetch_array($photoToGuess);
//Yes
if(mysql_num_rows($photoToGuess) > 0)
{
//do something
}
答案 0 :(得分:2)
试试这个,我删除了死亡状态,你可以使用if语句来达到死亡条件......它的工作效果很好。
$photoToGuess = mysql_query("SELECT photoID,id,total,boostStart,boostAmount,auth,photoUploadDate FROM photos WHERE (boostAmount !=0) AND ((boostAmount-boostStart)>total) AND (auth=2 OR auth=5 OR auth=7) ORDER BY RAND() LIMIT 1");
$getphotoToGuess = mysql_fetch_array($photoToGuess);
//Yes
if(mysql_num_rows($photoToGuess) > 0)
{
//do something
}
答案 1 :(得分:1)
你的条件错了
你为什么在这里的if conditioner代码中使用GROUP BY
$photoToGuess