可恢复的致命错误:类PDOStatement的对象无法转换为字符串PHP错误消息
我正在使用PHP OOP和MySQL创建一个在线商店。在这个项目中,我创建了一个页面,商店管理员可以在其中查看商店的所有类别,并按类别查看产品的数量 因此,为了制作这一页,我将其编码为:可恢复的致命错误:类PDOStatement的对象无法转换为字符串PHP错误消息,php,oop,mysqli,Php,Oop,Mysqli,我正在使用PHP OOP和MySQL创建一个在线商店。在这个项目中,我创建了一个页面,商店管理员可以在其中查看商店的所有类别,并按类别查看产品的数量 因此,为了制作这一页,我将其编码为: $catSet = new Products(); $catShow = $catSet->GetCatp(0,10); foreach($catShow as $cat){ $nums = $catSet->NumCatProduct($cat['cat_title']); ec
$catSet = new Products();
$catShow = $catSet->GetCatp(0,10);
foreach($catShow as $cat){
$nums = $catSet->NumCatProduct($cat['cat_title']);
echo "
<tr>
<td>".$cat['table_id']."</td>
<td>".$cat['cat_title']." ($nums)</td>
<td><a href='categorydelete.php?cat_id=".$cat['cat_id']."'><span class='label label-danger'>REMOVE</span></a></td>
</tr>";
}
但问题是,每当我运行此命令时,都会出现以下错误:
可恢复的致命错误:类PDO语句的对象无法在Product.class.php的第行等中转换为字符串
其基本目标是:
$cat->bindParam(1,$cat);
所以如果你对如何解决这个问题有任何想法,请告诉我。。我真的很感激
提前谢谢 将PDO语句分配给
$cat
(第1行),然后尝试将其用作查询的字符串参数(第2行)。要解决此问题,只需使用两个不同的变量:
public function NumCatProduct($cat)
{
$res = $this->db->prepare("SELECT * FROM products WHERE product_category = ?");
$res->bindParam(1,$cat);
$res->execute();
$row_cat = $res->rowCount();
return $row_cat;
}
public function NumCatProduct($cat)
{
$res = $this->db->prepare("SELECT * FROM products WHERE product_category = ?");
$res->bindParam(1,$cat);
$res->execute();
$row_cat = $res->rowCount();
return $row_cat;
}