我想做这样的事情,但它不工作,我的意思是没有元素返回,即空查询。我怎样才能做到这一点呢?
foreach ($ghasharr as $key=>$val)
{
$stmt = $db->prepare("SELECT COUNT(id) as ccount FROM pics WHERE gallery=:ghash");
$stmt->bindValue(":ghash", $key);
$results = $stmt->execute();
$countarr[$results['ccount']] = $results['ccount'];
}发布于 2012-11-20 00:52:05
PDOStatement::execute
成功时返回TRUE,失败时返回FALSE。
也就是说,您的$results不是一个数组。您希望使用$stmt的fetch方法之一来获取结果。您也不必一遍又一遍地准备语句:
$stmt = $db->prepare('SELECT COUNT(id) as ccount FROM pics WHERE gallery = :ghash');
$stmt->bindParam(':ghash', $key);
foreach (array_keys($ghasharr) as $key) {
$stmt->execute();
$results = $stmt->fetch(PDO::FETCH_ASSOC);
$countarr[$results['ccount']] = $results['ccount'];
}https://stackoverflow.com/questions/13458323
复制相似问题