【发布时间】:2014-02-02 16:02:37
【问题描述】:
查询不产生任何结果。变量 response 应该保存查询结果,但是当我使用 var_dump 测试它包含它时,它显示它是空的。
try
{
$bdd = new PDO('mysql:host=localhost;dbname=ems', 'root', '');
} catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
$code=123456;
$query = $bdd->prepare('SELECT Code,sender FROM info WHERE Code = ?');
//,reciever,origin,destination,transit
$query->execute(array($code));
if($query->fetchColumn())
{
echo"good";
while($reponse = $query->fetch()){
var_dump($reponse);
echo"good";
echo $reponse['sender'];
}
} else{
echo" The Code entered was not found please verify and enter again";
}
【问题讨论】:
-
直接在 SQL shell 中运行您的查询。有结果吗?
-
检查
$query->execute是否返回 true。如果没有,请使用$bdd->errorInfo看看有什么问题。 -
打印出来的“好”吗?如果是这样,可能是因为
fetchColumn占用了您打算阅读的行。 -
检查你的牙套。我注意到您有 5 个大括号,这意味着某些东西没有正确闭合。 (您的
if块是否缺少右括号?? -
请问我如何检查 $query->execute 恢复为真