尝试通过简单的.php文件获取数据时出现不熟悉的MySQL错误

时间:2011-08-24 15:15:14

标签: php mysql

  

可能重复:
  mysql_fetch_array() expects parameter 1 to be resource, boolean given in select

只是尝试从现有数据中提取一些数据,其中存在搜索参数的现有数据。

    <html>
    <body>

    <?php
    $con = mysql_connect("localhost","***","***");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

    mysql_select_db("ubook247", $con);

    $result = mysql_query("SELECT * FROM buzz_data 
    WHERE index = '4'");

    while($row = mysql_fetch_array($result))
      {
      echo $row['buzz_img'] . " " . $row['buzz_title'];
      }

    ?>

    </body>
    </html>

错误说:

警告:mysql_fetch_array()要求参数1为资源,布尔值在第16行的C:\ wamp \ www \ ubook247 \ php \ display_buzz_data.php中给出

第16行是:

while($ row = mysql_fetch_array($ result))

由于我使用的是phpMyAdmin,并且我并不熟悉MySQL,所以这里有一个字段设置的图片:

Screenshot

2 个答案:

答案 0 :(得分:2)

使用index(注意反引号)。索引是MySQL的保留字。更好的方法是重命名字段,但这取决于你在项目中的距离......

$result = mysql_query("SELECT * FROM buzz_data WHERE `index` = 4");

答案 1 :(得分:1)

这是因为以下行未能返回资源

$result = mysql_query("SELECT * FROM buzz_data WHERE index = '4'");

这很可能是由于SQL错误或无法连接到数据库。可能是前者,因为你没有得到无法连接:

在上面的一行之后添加以下行。或者,您可以在MySQL目录中运行查询以确保没有错误。

echo mysql_error();