php - 什么会导致我的 MySQL 查询在两个结果后挂起?

标签 php mysql

我有一个简单的查询,我一辈子都无法在我的页面上打印出来:

$results = mysql_query("SELECT * FROM andyasks ORDER BY date");
$test = mysql_fetch_array($results, MYSQL_BOTH);
foreach ($test as $row){
    print($row[questions]);
}

这个输出(在我看来是不可预测的)只是每个 表字段的第一个字母,只是前两行。因此,一个 75 行 x 5 列的表格应该显示 75 个“问题”,但它显示的是“00WWFFAA00”,这是前两行每个单元格的第一个字母。怎么回事?

最佳答案

试试这个。

$results = mysql_query("SELECT * FROM andyasks ORDER BY date");

while($row = mysql_fetch_array($results))
{
    print($row["questions"]);
}

原因是你只会用

进行一次获取
$test = mysql_fetch_array($results, MYSQL_BOTH);

这就是为什么您需要在 while 循环中使用它。它获取一行,当没有更多行时 while 循环将终止(因为当没有更多行时它返回 false)。

关于php - 什么会导致我的 MySQL 查询在两个结果后挂起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/986718/

相关文章:

Php 显示错误

php - 在独立的非 Laravel 应用程序中照亮验证器

PHP:有什么更好的方法可以在不使用 IP 地址作为唯一标识符的情况下计算每台计算机的浏览量?

PHP PDO MySQL 密码验证问题

php - 使用 Laravel 数据未保存在数据库中

javascript - 如何使用 "more"或 "details"消耗部分创建警报对话框?

php - Uncaught Error : Class 'WindowsAzure\Common\ServicesBuilder' not found- MS Azure | PHP

php - 使用 PDO 查询两个数据库

MySQL、SQL - 如何同时选择、更新和替换

mysql - Liferay 7.0 从一个数据库到另一个数据库的数据迁移