php - fatal error : Call to a member function rowcount() on a non-object on a working query

标签 php mysql

我正在运行这个查询

try
{
$park_id = $_GET['park_id'];
$query2="SELECT `name` FROM  `tpf_rides` WHERE  `park_id` = $park_id AND  

`top_ride` = 1 ORDER BY `name` ASC";
$result2 = $pdo->query($query2);
}
catch (PDOException $e)
{
$output = 'Unable to pull rides.';
include 'output.html.php';
}

$output = 'Sucessfully pulled rides';
//include 'output.html.php';//

并用

显示
<?php foreach ($result2 as $row2): ?>

<li><h3><?php echo $row2['name']; ?></h3></li>

<?php endforeach; ?>

一切正常,“热门游乐设施”列表正确显示。

问题是我正在尝试添加一个 if 语句,以便如果特定的“公园”没有“顶级游乐设施”,则不会显示该页面的一部分。下面是我正在尝试工作的代码,但我收到错误“ fatal error :在第 133 行的/home/danville/public_html/parkindex/park.php 中的非对象上调用成员函数 rowcount()”这个 bieng line 133 "if ($count2 = $query2->rowcount() < 1)"有人能帮忙吗?

if ($count2 = $query2->rowcount() < 1)

{
    echo "No results found";
} 

else 

{
 echo "<h2>Top Attractions</h2>";

foreach ($result2 as $row2){

echo "<li><h3>{$row2['name']}</h3></li>";

}


}

最佳答案

我遇到了同样的问题。事实证明,解决方法是准备,然后执行。

$result = $pdo->prepare($query2);
$result->execute();
$count = $result->rowCount();

奇怪的是,rowCount 是$pdo->query(); 返回的对象的函数,看起来像是内部故障。

尝试:

var_dump(get_class_methods($result)); 

明白我的意思。

关于php - fatal error : Call to a member function rowcount() on a non-object on a working query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15987289/

相关文章:

mysql - 根据以下数据计算排名

sql - 选择按频率排序的最重要的不同结果

php - 如何在 Laravel eloquent 的子查询中使用 "With"和条件?

php - 如何使用 PDO 进行 LIKE 搜索?

php - Yii 从 CListView 部分中访问先前的数据项

mysql - 用于将行值复制到空白匹配条件的 SQL 命令

php - 如何告诉 PHPStorm 调试器,我的项目有项目根目录以外的文档根目录

php - 我无法通过前端或 WP-CLI 登录到我的任何 WordPress 开发网站

mysql - 合并表而不覆盖mysql phpmyadmin中的现有表

java - 具有 4000 万个值的自动建议