我想将数据库中的产品显示为 HTML.我只从数据库中显示最后一行



我正在做一个学校项目,一个简单的网上商店。 我决定在这里问它。

我想做的是使用 PHP 将数据库中的产品显示到我的"产品页面"。

出于某种原因,我只得到了最后一个要展示的产品,图像也有问题。我知道查询是正确的。

"从产品中选择 *";

这是我的代码。

这是我的PHP,我把它放在产品.php页面的顶部。

product.php
<?php
session_start();
include "includes/connectie.php";
include "includes/navbar.php";
$vraag = "SELECT * FROM products";
//var_dump($vraag); Var dump test
$resultaat = $conn->query($vraag);
if ($resultaat->num_rows > 0) 
{   // Min. 1 row returned
while ($rij = $resultaat->fetch_assoc())
{
$id = $rij['id'];
$titel = $rij['product_name'];
$prijs = $rij['product_price'];
$omschrijving = $rij['description'];
$foto = $rij['image'];
} 
}
else 
{
// Do nothing
}
?>

这是我下面的HTML代码,我想"显示"的地方,我也在与上面的代码相同的文件中使用它。所以首先是php,然后是html

product.php
<body>
<div class="products">
<div class="productContainer">
<h1 id="banner">ALL ITEMS</h1>
<div class="productRow">
<?php
echo '<img src="img/product_'.$id.'.jpg">';
?>
</div>
<?php 
echo '<h1>'.$titel.'</h1>';
echo '<p class="prijs">'.$prijs.'</p>'; 
echo '<p class="omschrijving">'.$omschrijving.'</p>';
?>
<div class="productRow">
<?php
echo '<img src="product_'.$id.'.jpg">';
echo '<h1>'.$titel.'</h1>';
echo '<p class="prijs">'.$prijs.'</p>'; 
echo '<p class="omschrijving">'.$omschrijving.'</p>';
?>

所以我只把HTML/PHP放在我想要前两个产品的地方作为例子。 我总共有6个产品。我还附上了数据库的图片

数据库

我做错了什么?

这是它现在的样子: 产品展示示例

在 PHP 文件中,您已将所有值从数据库添加到数组中。 但是,当您尝试在 HTML 中显示数组值时,您没有使用任何循环。 循环是显示数组所有值的必要条件。在 HTML 文件中添加循环。

最新更新