【发布时间】:2012-08-02 20:29:02
【问题描述】:
我有一个循环,应该显示所有 MySQL 结果的摘要。它通过确定可能有多少结果然后循环多次来做到这一点。因此,如果有 43 个结果与我的查询匹配,而不是显示所有 43 个结果,它只显示第一个结果 43 次。请帮忙!这是我的代码:
if (empty($res)) {
echo 'No results found';
} else if($num>1){
echo "<b>".$num_rows."<b> results found...<br>";
while ($res = mysql_fetch_assoc($result)) {
echo "<a href='#'>{$res['dealer']}</a><br>";
}
} else {
echo "<table border=\"0\"><tr><td colspan=\"2\"><span class=\"dealer\">" . $res['dealer'] . "</span></td></tr><tr><td><span class=\"label\">Pin: </span><span class=\"inf\">" . $res['pin'] . "</span></td><td><span class=\"label\">OB CODE: </span><span class=\"ob\">" . $res['ob'] . "</span></td></tr><tr><td><span class=\"label\">Program Director:</span></td><td><span class=\"inf\">" . $res['contact'] . "</span></td></tr><tr><td valign=\"top\"><span class=\"label\">Address:</span></td><td><span class=\"inf\">" . $res['address'] . "<br>" . $res['city'] . ", " . $res['state'] . "<br>" . $res['zip'] . "</span></td></tr><tr><td><span class=\"label\">Dealer Phone:</span></td><td><span class=\"inf\">" . $res['phone'] . "</span></td></tr><tr><td><span class=\"label\">Codes Valid on:</span></td><td><span class=\"inf\">" . $res['website'] . "</span></td></tr></table>";
}
非常感谢!
【问题讨论】:
-
您应该停止使用
mysql_*函数。它们正在被弃用。请改用PDO(PHP 5.1 起支持)或mysqli(PHP 4.1 起支持)。如果您不确定要使用哪一个,read this SO article. -
请格式化您的代码以使其可读
-
没问题,尝试复制/粘贴它有点奇怪。我不得不弄乱间距以使其正确发布为代码。
-
$num_rows在哪里定义?认为您的意思是$num。我建议您慢慢查看您的代码,以确保您了解每个步骤等。看起来您有点纠结。无意冒犯。