Using PDO to echo display all rows from a table(使用 PDO 回显显示表中的所有行)
问题描述
我正在尝试使用 PDO 回显表的所有行,但遇到了问题.
I'm trying to echo out all the rows of a table using PDO but am running into trouble.
用旧的方式做我会这样做
With the old way of doing I'd have done it like
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)){
$title= $row['title'];
$body= $row['body'];
}
但是我正在尝试使用 PDO;
But with PDO I'm trying;
$result = $db->prepare("SELECT title, body FROM post");
$result->execute();
while ($row = $db->fetchAll(PDO::FETCH_ASSOC))
{
$title = $row['title'];
$body = $row['body'];
}
echo $title;
echo $body;
它一直给我调用未定义的方法 PDO::fetchAll()
Which keeps giving me Call to undefined method PDO::fetchAll()
做手册中给出的例子
<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();
/* Fetch all of the remaining rows in the result set */
print("Fetch all of the remaining rows in the result set:
");
$result = $sth->fetchAll();
print_r($result);
?>
有效,但我认为我无法像使用 $row=['blah']; 那样控制各个列.我呢?它也像这样打印出来;比较丑:
Works, but I don't think I have control over the individual colums like I would with a $row=['blah']; do I? It also prints out like this; rather ugly:
Array ( [0] => Array ( [title] => 这是数据库中输入的测试标题[0]
Array ( [0] => Array ( [title] => This is the test title entered in the database[0]
需要做什么才能正确使用 PDO 来做到这一点?
What needs to be done to properly use PDO to do this?
推荐答案
change:
while ($row = $db->fetchAll(PDO::FETCH_ASSOC))
{
$title = $row['title'];
$body = $row['body'];
}
到:
while ($row = $result->fetch(PDO::FETCH_ASSOC))
{
$title = $row['title'];
$body = $row['body'];
}
这篇关于使用 PDO 回显显示表中的所有行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:使用 PDO 回显显示表中的所有行
基础教程推荐
- 在PHP中根据W3C规范Unicode 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- 如何替换eregi() 2022-01-01
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
