【发布时间】:2013-08-20 12:49:36
【问题描述】:
<?php
include 'config.php';
$tid = $_GET['tid'];
$sql="SELECT FROM topics where tid='$tid'";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
?>
<div class="topics"><font size="4"><?php echo $rows['title']; ?></font></div><div class="tdm"><br/><center><img src="http://appricart.com/test/img/<?php echo $rows['photo']; ?>" height="100" width="100"/><br/>
<small><?php echo $rows['message']; ?></small></div>
<?php
}
include 'foot.php';
?>
有时这段代码有效,有时它不能帮助我解决这个问题。
显示这个错误
mysql_fetch_array() expects parameter 1 to be resource
【问题讨论】:
-
当您的查询出现错误时,您仍然使用
$result调用mysql_fetch_array,这不是合法资源。您还应该注意到 mysql 扩展已被弃用。您应该使用更现代的,例如 Mysqli 或 PDO Mysql -
我假设您的查询是复制/粘贴错误,即。
SELECT title, photo, message FROM ...或SELECT * FROM ...而不是SELECT FROM ...。此外,您可以通过在查询中直接使用$_GET值而不转义它来打开 SQL 注入。