$\u获取创建产品页面

zpf6vheq  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(251)

我正在尝试根据从url传入的id创建产品页,出现以下错误:
致命错误:无法在第4行的e:\xampp\htdocs\diamondcommerce\product.php中将product类型的对象用作数组

<?php
//URL would be diamond.dev/product?{id}
require_once 'dbconfig.php';
$product_id = $_GET[$product['product_id']]; 
$currentProduct = $DB_con->prepare("SELECT * FROM products where product_id = :this_product_id LIMIT 1");
$product_id->bindParam(":this_product_id"   , $product_id);   
$currentProduct->execute();
$currentProductInfo = $currentProduct->fetch(PDO::FETCH_ASSOC);
//if isset for button
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title><?php $currentProduct['product_name']?></title>
</head>
<body>
<?php 
foreach($currentProductInfo as $currentProduct) 
{
echo '<p>',$currentProduct['product_name'],'</p>';  
echo '<p>',$currentProduct['product_description'],'</p>';   
echo '<p>',$currentProduct['product_price'],'</p>'; 
echo '<p>',$currentProduct['product_image'],'</p>';
echo '<a href="#" class="btn btn-primary" name="addToBasket">Add to Basket</a>';
}
?>
</body>
</html>

url看起来不错(例如:http://diamond.dev/product.php?id=5),这正是我想要的,但我不知道是什么导致了这个错误。非常感谢您的帮助。

0x6upsns

0x6upsns1#

错误来自此行:

<title><?php $currentProduct['product_name']?></title>

因为$currentproduct被定义为

$currentProduct = $DB_con->prepare("SELECT * FROM products where product_id = :this_product_id LIMIT 1");

换句话说,$currentproduct是一个准备好的语句,而不是数组。你可能想用 $currentProductInfo 在你的标题里。

相关问题