将查询发送到数据库时获取PHP错误

时间:2011-11-17 05:07:07

标签: php

  

可能重复:
  Warning: mysql_fetch_* expects parameter 1 to be resource, boolean given error

我一直收到这个错误;

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in 

我检查了其他问题及其答案,但无法弄明白。当我从phpmyadmin使用$ number中的任何数字时,我的查询工作正常。但是像这样它不起作用。

$editquery = mysql_query("select * from content where no='$number' LIMIT 1");
$row = mysql_fetch_array($editquery);
echo $row[0]; // 42
echo $row[1]; // the email value

还有一个问题哪个更好mysql_fetch_arraymysql_fetch_row

5 个答案:

答案 0 :(得分:1)

可能是$editquery包含null

$editquery = mysql_query("select * from `content` where `no`='$number' LIMIT 1");
if($editquery)
 {
  $row = mysql_fetch_array($editquery);
  echo $row[0]; // 42
  echo $row[1]; // the email value
 }

答案 1 :(得分:0)

$editquery = mysql_query("select * from content where no='$number' LIMIT 1");

$ row = mysql_fetch_array($ editquery);
echo $ row [0]; // 42
echo $ row [1]; //电子邮件值

替换为:

while ($row = mysql_fetch_array($editquery) {
    echo $row[0]; // 42
    echo $row[1];
}

答案 2 :(得分:0)

您无法解析单引号中的$ number

答案 3 :(得分:0)

我认为你的结果为0,这就是你调用$row[0] or $row[1]错误的原因。

$editquery = mysql_query("SELECT * FROM content WHERE no='$number' LIMIT 1");
if(mysql_num_rows($editquery)) // return 0 or 1
{
    $row = mysql_fetch_array($editquery);
    echo $row[0]; // 42
    echo $row[1]; // the email value
}

答案 4 :(得分:-1)

$editquery = 'select * from content where no='.$number.' LIMIT 1';
$eq = $db->query($editquery);
while ($row = $eq->fetch_object()) {
    echo "Number :".$row->No."<br />";
    echo $row->Name."<br />";
}

我解决了这个问题大家谢谢你的帮助!

我认为这是因为我使用此代码连接到数据库;

$db = new mysqli('localhost', 'root', '', 'csf');