Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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/MySQL-使用SELECT时出错,但没有匹配的数据_Php_Mysql - Fatal编程技术网

PHP/MySQL-使用SELECT时出错,但没有匹配的数据

PHP/MySQL-使用SELECT时出错,但没有匹配的数据,php,mysql,Php,Mysql,我想得到一个图像的ID,它是boostAmount boostStart>total。当前,如果存在合适的图像,它将正常工作。然而,如果没有适当的证据表明我得到了这个错误 无效查询:SQL语法中有错误;检查与MySQL服务器版本对应的手册,以了解第1行“ORDER BY RAND()LIMIT 1”附近使用的正确语法 如果你的情况不好 为什么在您的if护发素代码中使用$photoguess if(mysql_num_rows($getphotoToGuess ) > 0){ //

我想得到一个图像的ID,它是boostAmount boostStart>total。当前,如果存在合适的图像,它将正常工作。然而,如果没有适当的证据表明我得到了这个错误

无效查询:SQL语法中有错误;检查与MySQL服务器版本对应的手册,以了解第1行“ORDER BY RAND()LIMIT 1”附近使用的正确语法

如果你的情况不好 为什么在您的if护发素代码中使用
$photoguess

if(mysql_num_rows($getphotoToGuess ) > 0){
    // do something
}

试试这个,我删除了模具条件,你们可以使用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
    }

您可以在before ORDER BY中引用此

缺少一个
您的查询语法是正确的…您需要调试代码并更新完整的堆栈跟踪…即使我删除ORDER BY RAND()LIMIT 1,它也会显示相同的错误。这对我来说真的很奇怪。改变你的想法!=将此用作更改您的配置的参考!=to没有帮助:(但我知道这是错误的,如果有结果显示,则此条件有效。错误是当数据库中没有匹配的结果时。(boostAmount!=0)和((boostAmount boostStart)>total)和(auth=2或auth=5或auth=7)您想使用此语句检查什么?您的语句有问题,请再次检查,显然您错过了上述查询中的一个结束括号。您的查询不起作用,因为在where条件下,它将得到错误的值,即1或0,因此您的条件是这样工作的“从where photos 0 ORDER BY RAND()LIMIT 1”@user2203466开始逐个删除条件,并检查哪个条件出现问题。((boostAmount boostStart)>total)给出问题。
$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
    }