我想显示我在mysqli数据库中的一些图片,它们被存储为blob。但我得到的只是一张A4纸,上面有空白的文字。。
这是我的代码,我也使用显示(我连接到我的数据库以上的代码):
echo "<table border=1>'n";
/*echo " <tr>'n";
echo " <th>Bild</th><th>Namn</th><th>Betygsättning</th>'n";
echo " </tr>'n";*/
while ($rad = mysqli_fetch_array($sql_result)) {
echo "<tr>";
echo "<td>";?> <img src="<?php echo $rad["Bild"]; ?>" height="100" width="100"> <?php echo "</td>";
echo "<td>"; echo $rad["Namn"]; echo "</td>";
echo "</tr>";
}
echo "</table>'n";
如果你真的想把图像嵌入到生成的html中,你应该在这里这样写:
echo "<td>";?> <img src="data:image/jpeg;base64,<?php echo base64_encode($rad["Bild"]); ?>" height="100" width="100"> <?php echo "</td>";
这里再次有一个更干净的代码:
echo "<table border='"1'">'n";
while($rad = mysqli_fetch_array($sql_result)) {
echo " <tr>'n";
echo " <td>'n";
echo " <img src='"data:image/jpeg;base64," . base64_encode($rad["Bild"]) . "'" height='"100'" width='"100'" />'n";
echo " </td>'n";
echo " <td>" . $rad["Namn"] . "</td>";
echo " </tr>'n";
}
echo "</table>'n";
您似乎也忘记关闭img标记了。
echo '<table border=1>';
/*echo " <tr>'n";
echo " <th>Bild</th><th>Namn</th><th>Betygsättning</th>'n";
echo " </tr>'n";*/
while ($rad = mysqli_fetch_array($sql_result)) {
echo '<tr>
<td><img src="'.$rad["Bild"].'" height="100" width="100"></td>
<td>'.$rad["Namn"].'</td>
</tr>';
}
echo '</table>';
这样就可以了。当你在一个php代码块中时,你可以像上面一样对它进行concatonate。