PHP 只返回第一个 MySQL 结果

标签 php mysql loops repeat

我有一个循环应该显示所有 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>";

}

提前致谢!

最佳答案

那是因为您只获取了第一行(当您执行 $res = mysql_fetch_assoc($result); 时)。您尝试执行的操作实际上是不必要的:mysql_fetch_assoc() 每次运行时都会自动将数据指针向前移动。你可以做的(实际上是常见的做法)是这样的:

//...
while ($res = mysql_fetch_assoc($result)) {
    echo "<a href='#'>{$res['dealer']}</a><br />";
}
//...

附带说明,mysql_* 函数即将被弃用。您可以使用 mysqliPDO 代替;如果你是一个懒惰的流浪汉,有很多代码要切换(像我一样),你可以使用 mysqli 过程函数 - 它们几乎与原始的 mysql_* 功能。

关于PHP 只返回第一个 MySQL 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11785237/

相关文章:

php - 严格标准 :Only variables should be passed by reference is

php - 通过服务器发送电子邮件

php - 为什么别人看不到我的wordpress网站

javascript - 如何在ajax url中使用laravel路由

php - 如何使用 php 下载和上传 SQL 数据库为 .sql 文件?

javascript - 欧拉计划 8 JavaScript

php - 从表内的文本框中获取值并使用 JQuery 将其存储为变量

MySQL:SELECT 与 AND OR 产生不正确的数据?

c++ - 学习C++,从一本书中寻找关于这个项目的说明

c++ - 为什么我需要在使用它的循环的每次迭代中清除 stringstream 变量