我的数据库“enchere”中有一个名为Produit的表。
我想显示存储在表产品中的数据。这些数据是Nom_produit,description_produit和产品的图像。
图像存储在服务器中(在我的机器中,我用Xampp测试我的代码)。
我获取所有数据并显示。问题是图像无法显示。我试图确保图像的URL正确输入,我无法修复探测器。请帮忙 我的网页的屏幕截图已附上,没有显示图像 下面是我的代码。
$conn=new mysqli('localhost','root','','enchere');
if (!$conn) {
die ('Failed to connect to MySQL: ' . mysqli_connect_error());
}
$sql = "select * from produit ";
$query = mysqli_query($conn, $sql);
if (!$query) {
die ('SQL Error: ' . mysqli_error($conn));
}
//$row = mysqli_fetch_array($query);
//echo "127.0.0.1/images/".$row['image'];
?>
<html>
<head>
<title>Displaying MySQL Data in HTML Table</title>
<style type="text/css">
body {
font-size: 15px;
color: #343d44;
font-family: "segoe-ui", "open-sans", tahoma, arial;
padding: 0;
margin: 0;
}
table {
margin: auto;
font-family: "Lucida Sans Unicode", "Lucida Grande", "Segoe Ui";
font-size: 12px;
}
h1 {
margin: 25px auto 0;
text-align: center;
text-transform: uppercase;
font-size: 17px;
}
table td {
transition: all .5s;
}
/* Table */
.data-table {
border-collapse: collapse;
font-size: 14px;
min-width: 537px;
}
.data-table th,
.data-table td {
border: 1px solid #e1edff;
padding: 7px 17px;
}
.data-table caption {
margin: 7px;
}
/* Table Header */
.data-table thead th {
background-color: #508abb;
color: #FFFFFF;
border-color: #6ea1cc !important;
text-transform: uppercase;
}
/* Table Body */
.data-table tbody td {
color: #353535;
}
.data-table tbody td:first-child,
.data-table tbody td:nth-child(4),
.data-table tbody td:last-child {
text-align: right;
}
.data-table tbody tr:nth-child(odd) td {
background-color: #f4fbff;
}
.data-table tbody tr:hover td {
background-color: #ffffa2;
border-color: #ffff0f;
}
/* Table Footer */
.data-table tfoot th {
background-color: #e5f5ff;
text-align: right;
}
.data-table tfoot th:first-child {
text-align: left;
}
.data-table tbody td:empty
{
background-color: #ffcccc;
}
</style>
</head>
<body>
<h1>VALIDATION DES PRODUITS AJOUTES</h1>
<table class="data-table">
<caption class="title">Produit en attente Validation administrateur</caption>
<thead>
<tr>
<th>Nom_Produit</th>
<th>Description_Produit</th>
<th>Prix_Produit</th>
<th>Image_Produit</th>
</tr>
</thead>
<tbody>
<?php
while ($row = mysqli_fetch_array($query))
{
//$amount = $row['amount'] == 0 ? '' : number_format($row['amount']);
echo '<tr>
<td>'.$row['nom'].'</td>
<td>'.$row['description'].'</td>
<td>'.$row['prix'].'</td>
<td>'.'<img src='."127.0.0.1/images/".$row['image']." width=100 height=100";'/></td>
</tr>';
}?>
</tbody>
</table>
</body>
</html>
答案 0 :(得分:1)
<?php
while ($row = mysqli_fetch_array($query)){
//$amount = $row['amount'] == 0 ? '' : number_format($row['amount']);
echo '<tr>
<td>'.$row['nom'].'</td>
<td>'.$row['description'].'</td>
<td>'.$row['prix'].'</td>
<td><img src="/images/'. $row['image'] . '" width="100" height="100"/></td>
</tr>';
}
?>
您的图片路径应该是相对的,而不是127.0.0.1!如果前面的松弛混乱,你也可以试试src =“images /”。您还可以执行$ _SERVER ['HTTP_HOST']之类的操作来获取URL的主机名,而不是使用像127.0.0.1这样的IP。
我检测到的另一个问题是你的$ row ['image']值连接的问题......你弄乱了那里的'和'符号,所以这可能就是它根本没有出现的原因。不管怎样,我相信上面的代码可以解决你的问题!