【发布时间】:2016-07-07 23:23:56
【问题描述】:
我的准备好的 SELECT 结果数组没有保存实际的列值时遇到问题。我知道如何使用 Java 从 sql 数据库中获取数据,但是我遇到了 PHP PDO 的问题。我连接到一个我知道有效的远程 AWS 数据库。代码如下:
$conn = new PDO($dsn, $username, $password);
//echo "Test";
这里我要获取所有列的数据
$sth = $conn->prepare("SELECT 'id', 'short-des', 'full-des', 'image-urls', 'date-created' FROM projects");
$sth->execute();
我已经放置了 PDO::FETCH_BOTH、PDO::FETCH_ASSOC、PDO::FETCH_COLUMN。这篇文章末尾的结果是我将 fetchall() 留空的结果。当我插入任何 PDO::styles 时,不会返回任何值。我已经完成了其他场景,例如使用 var_dump 以及 fetch 语句中提供实际结果的样式,但没有列包含的实际值。
$row = $sth->fetchAll();
echo "<br>" . $row[0] . "<br>";
echo "<br>" . $row[1] . "<br>";
$column1 = $row[0];
$column2 = $row[1];
for($i = 0; $i < 5; $i++){
echo " " . $column1[$i];
$var = $column1[$i];
echo " = " . $var . " , ";
}
for($i = 0; $i < 5; $i++){
echo " " . $column2[$i];
$var = $column2[$i];
echo " = " . $var . " , ";
}
这是生成的文本:
64 位 PDO 可用
数组
数组 id = id , short-des = short-des , full-des = full-des , image-urls = image-urls , date-created = date-created , id = id , short-des = short-des , full- des = full-des , image-urls = image-urls , date-created = date-created , 连接成功
我猜测它没有显示实际值的一些愚蠢的简单原因。由于我来自 JDBC,因此我不熟悉“获取”概念,但是过去几天我一直试图让它工作但无济于事。我看过类似的帖子,例如this post、this post 和this post。这些似乎处理略有不同的问题。不幸的是,我想使用准备好的语句而不是实际的查询。
【问题讨论】: