我正在尝试使用 PDO 显示一些结果。直到现在用于mysqli_conect()
连接数据库。我想在“foreach()”中显示结果时发现了错误。有人可以告诉我如何纠正错误吗?提前致谢”
代码:
<?php
try {
$conn = new PDO("sqlsrv:server = tcp:name.database.windows.net,1344;
Database = my_db_name", "my_user_name", "my_password");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT Prod_Usu, Prod_Tit, Prod_Fec FROM productos");
$stmt->execute();
// set the resulting array to associative
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach($result as $row) {
echo $row['Prod_Usu'] . " - " . $row['Prod_Tit'] . " - " .
$row['Prod_Fec'] . "<br>";
}
}
catch(PDOException $e) {
echo "Error: " . $e->getMessage();
}
$conn = null;
?>
您必须使用PDOStatement::fetch或PDOStatement::fetchAll来检索结果。
您的代码只有一行错误。
改变这个:
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
为了这:
它应该工作。
然后可以使用循环
foreach
或使用读取结果集while
。