可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in select
我使用了条件子句: `
$link = mysql_connect("localhost", "root", "");
mysql_select_db("dvddb", $link);
$sql = "SELECT id, title, genre, format, year,FROM dvd WHERE title LIKE 'T%'";
$result = mysql_query($sql, $link);
>`
然而,我收到一个错误: 警告:mysql_fetch_assoc()要求参数1为资源,在第114行的C:\ xampp \ htdocs \ moviesort.php中给出布尔值
其中114是这一行:
<?php while ($row = mysql_fetch_assoc($result))
包含第114行的完整代码如下:
<ul class="grid">
<?php while ($row = mysql_fetch_assoc($result))
{ ?>
<li>
<p class="image">
<a href="synopsis.php?id=<?php echo $row['id']; ?>">
<img src="getImage.php?id=<?php echo $row['id']; ?>" alt="" width="175" height="200" />
</a>
</p>
<p class="name"><?php echo $row['title']; ?></p>
<p class="genre"><?php echo $row['genre']; ?></p>
<p class="format"><?php echo $row['format']; ?></p>
<p class="year"><?php echo $row['year']; ?></p>
</li>
<?php } // while
?>
</ul>
有谁知道我做错了什么?
答案 0 :(得分:3)
$sql = "SELECT id, title, genre, format, year,FROM dvd WHERE title LIKE 'T%'";
FROM
mysql_error()
获取确切的错误消息答案 1 :(得分:3)
答案 2 :(得分:2)
您的查询中有额外的,
,导致语法错误:
$sql = "SELECT id, title, genre, format, year,FROM dvd WHERE title LIKE 'T%'";
^--here
使用一些基本的防御性编程技术,你已经看到了这个错误。特别是,您没有检查数据库故障。
$result = mysql_query($sql, $link);
if ($result === FALSE) {
die(mysql_error());
}
永远不要假设数据库操作已完成。即使您使用的查询字符串在语法上100%正确,它仍然可能由于其他任何原因而失败。