【问题标题】:PHP: Displaying table data using fetchall()PHP:使用 fetchall() 显示表格数据
【发布时间】:2011-12-05 22:50:56
【问题描述】:

快速 PHP/MySQL 问题:

我正在尝试将 MySQL 数据库表中的数据显示为 HTML 表,出于某种原因,我的代码将每条数据的输出加倍。

这是我的代码:

$rowarray = $statement->fetchall();
print "<tr>\n";  
foreach ($rowarray as $row) {
    foreach ($row as $col) {
        print "\t<td>$col</td>\n";
    }
    print "</tr>\n";
}  

我的结果与此类似:

用户 ID |用户名 |名字 |姓氏

    1              1           用户名   用户名     名字     名字     姓氏     姓氏

等等等等。你明白了。为什么会这样?顺便说一句,如果我通过引用row[]下标0-3手动添加列信息,则一切正常显示;只有当我使用嵌套的 foreach 语句时,数据才会重复。

【问题讨论】:

    标签: php mysql arrays fetchall


    【解决方案1】:

    您从PDO fetchall 得到一个数字和一个名称索引值。仅获取数字索引:

    $rowarray = $statement->fetchall(PDO::FETCH_NUM);
    

    【讨论】:

    • 就是这样!非常感谢。
    猜你喜欢
    • 2018-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-14
    相关资源
    最近更新 更多