mysqli获取数组抓取所选id的所有数据,除了图像

时间:2015-06-19 06:33:19

标签: php arrays mysqli

我将产品数据存储在我的数据库中,包括图像文件。然后,我通过foreach循环在一个页面中显示我的所有产品。如果我点击一个产品,它会将我带到一个名为viewProducts.php的页面。在该页面中,我从该ID中提取信息并在该页面上更详细地显示。但是,由于某种原因,图像文件未更改为该ID的图像。图像保留为第一个产品ID。所有其他产品数据都是正确的,并与我点击查看的产品相关联。

我的viewProducts页面的代码显示数据是这个..

<?php
    $result = mysqli_query($con,"SELECT * FROM products");
        if($row = mysqli_fetch_array($result)) {
            $products[$row['product_id']] = $row;

                echo "<img class='sizedimg' src='productpics/".$row['img'] ."' alt='Product Pic'>";
        }
?>

如果它更容易查看,我的网站是buyfarbest.com。转到产品页面,然后单击第一个产品以查看其是否正确,然后单击其他任何产品。

产品foreach循环

<?php   
// Loop to display all products


foreach($products as $id => $product) {
?>
                    <div class="item">
                        <div class="productpiccontainer">
                                <?php echo "<img class='sizedimg' src='productpics/".$product['img'] ."' alt='Product Pic'>"; ?>
                        </div>      

                                <p><?php echo "<a href='./viewProduct.php?view_product=$id'>" . $product['product_name'] . "</a>"; ?></p>
                                <p> <?php echo "$" . $product['price']; ?> </p>                                     
                    </div>
<?php
    }
?>

1 个答案:

答案 0 :(得分:1)

更改viewProduct.php

如果你的id是interger就像这样做

$result = mysqli_query($con,"SELECT * FROM products where product_id =".$_GET['view_product']);

如果你的id不是这样的整数

$result = mysqli_query($con,"SELECT * FROM products where product_id ='".$_GET['view_product']."' ");