我正在尝试查看存储在数据库中的图像,而数据库存储的是图像的文件名
这是获取数据的代码
function fetch_data()
{
ob_start();
$output = '';
$conn = mysqli_connect("localhost", "root", "", "it180p");
$sql = "SELECT * FROM incidentreport ORDER BY reportId ASC";
$result = mysqli_query($conn, $sql);
while($row = mysqli_fetch_array($result))
{
$output .= '<tr>
<td>'.$row["status"].'</td>
<td>'.$row["school"].'</td>
<td>'.$row["gradeLvl"].'</td>
<td>'.$row["section"].'</td>
<td>'.$row["dateTime"].'</td>
<td>'.$row["incidentType"].'</td>
<td>'.$row["incidentDesc"].'</td>
<td>'.$row["sender"].'</td>
<td>'.$row["invPeople"].'</td>
<td>'.$row["studStatYes"].'</td>
<td>'.$row["studStatNo"].'</td>
<td>'.$row["numInvPeople"].'</td>
<td>'.$row["attachment"].'</td>
</tr>
';
}
return $output;
}
这是查看获取的数据的代码
<?php foreach($incidentreports as $report) { ?>
<tr>
<td><?php echo $report["school"]; ?></td>
<td><?php echo $report["gradeLvl"]; ?></td>
<td><?php echo $report["section"]; ?></td>
<td><?php echo $report["dateTime"]; ?></td>
<td><?php echo $report["reportDate"]; ?></td>
<td><?php echo $report["incidentType"]; ?></td>
<td><?php echo $report["incidentDesc"]; ?></td>
<td><?php echo $report["invPeople"]; ?></td>
<td><?php echo $report["sender"]; ?></td>
<td><?php echo $report["studStatYes"]; ?></td>
<td><?php echo $report["studStatNo"]; ?></td>
<td><?php echo $report["maleCount"]; ?></td>
<td><?php echo $report["femaleCount"]; ?></td>
<td><?php echo $report["numInvPeople"]; ?></td>
<td><?php echo '<img src="uploads/png;base64,'. ( $report["attachment"] ).'"/>'; ?></td>
</tr>
当我只放入“附件”时,它仅显示文件名,因此我尝试使用上面的代码。没有任何错误,但图像未加载,仅显示为损坏的img图标。我尝试了其他方法,但目前仍停留在这里,不知道该怎么办。如果有人可以帮助我,我将非常感谢。
答案 0 :(得分:0)
尝试一下,
/png;base64
这不被理解,因此已删除
<td><img src="<?php echo base_url('uploads/'.$report["attachment"]); ?>"></td>
如果您没有保存在数据库中,请不要忘记添加扩展名
答案 1 :(得分:0)
<td><img src="<?php echo 'your_image_path/'.$report['attachment']); ?>"></td>
尝试上面的代码。而“ your_image_path”是图像路径。示例:https://localhost/your_project/uploads/ 如果您使用的是codeigniter框架,请遵循M.Hemant的回答。那将解决您的问题。