如果你们能帮忙, 我正在尝试切换到新的 PDO 但遇到困难...
为什么这段代码有效:
include ('connect.php');
$sql = "SELECT * FROM GP_2012";
$conn = $DBH->query($sql);
foreach ($conn as $row)
{
print $row['Prenom'] . ' ' . $row['Nom'] . '<br>' .
'Type: ' . $row['Type'] . '<br>' .
'Telephone: ' . $row['Tel'] . '<br>' .
'Mail: ' . $row['Mail'] . '<br>' .
'Bateau: ' . $row['Bateau'] . '<br>' .
'<br><br>';
}
.
不是这个:
include ('connect.php');
$sql = "SELECT * FROM GP_2012 WHERE Nom LIKE Pageot";
$conn = $DBH->query($sql);
foreach ($conn as $row)
{
print $row['Prenom'] . ' ' . $row['Nom'] . '<br>' .
'Type: ' . $row['Type'] . '<br>' .
'Telephone: ' . $row['Tel'] . '<br>' .
'Mail: ' . $row['Mail'] . '<br>' .
'Bateau: ' . $row['Bateau'] . '<br>' .
'<br><br>';
}
我在 PHPMYADMIN 中尝试过,这些查询都有效,第二个应该显示一个结果,但我什么也没得到,在我的错误日志中我得到: 为 foreach() 提供的参数无效
最佳答案
你的sql是错误的。
$sql = "SELECT * FROM GP_2012 WHERE Nom LIKE '%Pageot%'";
可以设置异常模式,出错时抛出异常。
或者你需要检查结果,如果返回false,检查错误信息。
关于php - PDO 为 foreach() 提供的参数无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12988109/