gpt4 book ai didi

php - 如何使用 MYSQLi 查询从数据库中以 php 显示图像?

转载 作者:可可西里 更新时间:2023-11-01 08:39:10 25 4
gpt4 key购买 nike

下面是我的页面跳转到“prac_image_display”以显示图像的代码:-

<?php
session_start();
include("database.php");
$sql = mysqli_query($con,"select * from mst_subject");
echo "<h2><table cellpadding=5>";
while($row = mysqli_fetch_array($sql)){
echo "<tr>";
echo "<td><img height='50' width='50' src='prac_img_display.php? id=".$row['sub_id']."'></td><td><a href=showtest.php?subid={$row['sub_id']}>".$row['sub_name']."</td>";
echo "<tr>";
//$_SESSION['subid']=$row['sub_id'];
}
echo "</table></h2>";
?>

下面是写在 prac_image_display.php 文件中的代码:-

        <?php

if(isset($_GET['id']))
{
include("database.php");
$sql = "SELECT image FROM mst_subject WHERE
sub_id=".$_GET['id'].";";
//$sql = "SELECT image FROM mst_subject WHERE sub_id=8";
$result=mysqli_query($con,"$sql");
header("Content-type: image/jpeg");
echo mysqli_result($result,0);
mysqli_close($con);
}
else
{
echo 'Please use a real id number';
}
?>

下面是写在“database.php”文件中的代码:-

    <?php
$con=mysqli_connect("localhost","root","","test") or die("could not
connect ");
//mysql_select_db("test",$con) or die("Could connect to Database");
?>

图像以 BLOB 形式存储在数据库中。问题是当我在两个 .php 文件中使用 MYSQL 时,如上所示,它运行良好,所有图像都完美地显示在本地主机上,但是当我用 MYSQLi 函数替换 MYSQL 函数时,图像不会显示。请告诉我我可以在这里做什么更改。

最佳答案

您可以按照以下步骤DEBUG 找出实际问题所在。

Step 1 : Update your Image src

src='prac_img_display.php? id=".$row['sub_id']."'
/*TO*/
src='prac_img_display.php?id=".$row['sub_id']."'

注意:因为,有一个空格

Step 2 : Browse your Image URL in Browser, like

example.com/prac_img_display.php?id=8

注意:检查图像是否在您的浏览器窗口中正常显示。

如果,无法正常显示图片

Step 3 : Check header("Content-type: image/jpeg"); is correct.

假设,如果您上传了 PNG 图片,这将不起作用。

对于 PNG 图像,您应该使用 header("Content-type: image/png");

注意:另外不要忘记DEBUG SQL 结果。

关于php - 如何使用 MYSQLi 查询从数据库中以 php 显示图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44982795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com