Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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查询警告_Php_Mysql - Fatal编程技术网

Php MySQL查询警告

Php MySQL查询警告,php,mysql,Php,Mysql,可能重复: 有人能告诉我为什么我会犯这个错误吗 警告:mysql_fetch_数组期望参数1为资源,给定布尔值 通常,该警告表示提供的参数不是资源。对吗 我认为问题在于你说 "WHERE id = BETWEEN '".$start."' AND '".$end."'" 我认为不应该在考试之前有一个=。这将是一个语法错误,因此您将无法获得结果集。我相信问题在于您说过 "WHERE id = BETWEEN '".$start."' AND '".$end."'" 我认为不应该在考试之前有一

可能重复:

有人能告诉我为什么我会犯这个错误吗

警告:mysql_fetch_数组期望参数1为资源,给定布尔值


通常,该警告表示提供的参数不是资源。对吗

我认为问题在于你说

"WHERE id = BETWEEN '".$start."' AND '".$end."'"

我认为不应该在考试之前有一个=。这将是一个语法错误,因此您将无法获得结果集。

我相信问题在于您说过

"WHERE id = BETWEEN '".$start."' AND '".$end."'"
我认为不应该在考试之前有一个=。这将是一个语法错误,因此无法获得结果集。

试试这个

$query = mysql_query("SELECT MAX(id) from test");
$result = mysql_query($query);
$data = mysql_fetch_array($result);
$start = $data[0];
$end = $start -15;
$query = mysql_query("SELECT * from test 
  WHERE id BETWEEN '".$start."' AND '".$end."' ORDER BY id DESC");
试试这个

$query = mysql_query("SELECT MAX(id) from test");
$result = mysql_query($query);
$data = mysql_fetch_array($result);
$start = $data[0];
$end = $start -15;
$query = mysql_query("SELECT * from test 
  WHERE id BETWEEN '".$start."' AND '".$end."' ORDER BY id DESC");

好吧,我让它工作了。代码如下

    $q = mysql_query("SELECT MAX(id) FROM test");
    $data = mysql_fetch_array($q);
    $start = $data[0];

    //only shows 15 articles at a time 
    if($start>16)
    {
        $end = $start -15;
    }

    else
    {
        //Sets the minimum id to 1
        $start = 1;
    }

    $query = mysql_query("SELECT * from test WHERE id BETWEEN '".$end."' AND '".$start."' ORDER BY id DESC");

对于一个$query,需要将$q转换为$start和$end。谢谢你对大家的帮助

好吧,我让它工作了。代码如下

    $q = mysql_query("SELECT MAX(id) FROM test");
    $data = mysql_fetch_array($q);
    $start = $data[0];

    //only shows 15 articles at a time 
    if($start>16)
    {
        $end = $start -15;
    }

    else
    {
        //Sets the minimum id to 1
        $start = 1;
    }

    $query = mysql_query("SELECT * from test WHERE id BETWEEN '".$end."' AND '".$start."' ORDER BY id DESC");

对于一个$query,需要将$q转换为$start和$end。谢谢你对大家的帮助

您的查询可能有错误。这导致$result为false。使用echo mysql_error将其输出。$q不在您发布的示例中-您的两个查询都在$query变量中。您的查询中可能有错误。这导致$result为false。使用echo mysql_error将其输出。$q不在您发布的示例中-您的两个查询都在$query变量中。您是对的,但是如果您自己更正代码,并将注释放在代码部分之外,您的答案会更有用。Oky我已经测试过了,测试过了,测试过了。问题似乎出在SELECT MAXid from测试中。在我的数据库中,天气id是否存在仍然无法工作。现在,如果我只是从db中选择id,它可以工作,但是MAXid有一个问题。你是对的,但是如果你能自己更正代码,并将你的注释放在代码部分之外,你的答案会更有用。Oky我已经测试过了,测试过了,再次测试过了。问题似乎出在SELECT MAXid from测试中。在我的数据库中,天气id是否存在仍然无法工作。现在,如果我从数据库中选择id,它可以工作,但是MAXid有一个问题。