我正在尝试执行其他查询,您可以从下面的代码中看到。
我在执行第二次查询时遇到问题。似乎代码无法识别第二个查询。有人可以请一点建议吗?
提前致谢。
$query = "SELECT * FROM tst WHERE status ='active' order by created DESC LIMIT 9";
$result = mysql_query($query);
if (!$result) die ("database access failed : " . mysql_error());
while($row = mysql_fetch_array($result))
{
echo"<ul class='gallery'><li>";
echo "<td>" . $row['adid'] . "</td>";
$subquery = ("SELECT * FROM match_item_image where adid = '.$row['adid'].' LIMIT 1 ");
$results = mysql_query($subquery) or die ("Error in query: $subquery " . mysql_error());
$rows = mysql_fetch_array($results);
$rows = mysql_num_rows($results);
echo ' <a href="viewad.php?adid='.$row['adid'].'&subcat='.$row['subcat'].'"> <img src= "upload/'.$rows['image'].'"height="175" width="200"border="0" /> </a> ';
echo "<h2><a href=''>".$row['state'] . "</a></h2>";
echo "<h2><a href=''>".$row['loc'] . "</a></h2>";
echo"
</li>
</ul>";
}
答案 0 :(得分:4)
查询无法正常工作,因为您已将$row['adid']
作为字符串包含在内,而不是作为查询中的值包含在内,请将其置于此类
"SELECT * FROM match_item_image where adid = '" . $row['adid'] . "' LIMIT 1 "
您的查询现在容易被SQL Injection
攻击,请阅读以下文章