我保存我的图像名称到我的数据库和图像本身上传文件。
当用户想看到它们时,我想用div将它们显示给用户。
我脑子里乱七八糟的。
这是我的php代码

        $con = mysql_connect("localhost","root","");
        if (!$con){die('Could not connect: ' . mysql_error());}
            mysql_select_db("marmaris", $con);
            $bilgi= mysql_query("SELECT * FROM ".$isim." WHERE id='".$id."'");

            while($sutun= mysql_fetch_array($bilgi))
            {
                 $name=$sutun["name"];
                 $bures=$sutun["resbuyuk"];
                 $kures=$sutun["reskucuk"];
                 $aciklama=$sutun["aciklama"];
                 $map=$sutun["map"];
                 $link=$sutun["link"];

            }
            $words = preg_split('/[\s?]+/', $kures);
            $result = count($words);
            for($i=0;$i<$result;$i++){
                $city=$words[$i];
            }

我得到了6个图像现在$city是其中一个图像示例,我想向用户显示该图像。
这是我的html部分,不用担心isimid名称,它只是一次发送两个字。
 <div id="kucukres">
    <img src="upload/<?php echo $city ?>" alt="Angry face" width="32" height="32" />
    </div>

我想显示图像,但它只写备选字。
总之,我想显示已保存在数据库中的图像(名称)和上传文件夹中的图像本身。
在php部分,我从数据库中获取文件名;在html中,我想显示该图像。
编辑:
这是我的新html标记。
   <div id="kucukres">
   <img src="getres.php?file=<?php echo $isimid;?>"/>
    </div>

我的php文件是
$bilgi= mysql_query("SELECT reskucuk FROM ".$isim." WHERE id='".$id."'");

            while($sutun= mysql_fetch_array($bilgi))
            {

                 $kures=$sutun["reskucuk"];

            }
            $words = preg_split('/[\s?]+/', $kures);
            $result = count($words);
            //unlink("upload/$word[$isim]");
            for($i=0;$i<$result;$i++){
                $city=$words[$i];
                header('Content-type: image/jpeg');
                $pic = 'upload/'.$city;
                 echo $pic;

但我仍然看不到我的html文件中的图像。

最佳答案

在这个问题上不乏tutorials and samples
从本质上说,您要做的是两个PHP文件,而不仅仅是一个。您需要一个用于页面,一个用于图像(可以对所有图像重复使用)。
首先看一下为页面呈现的HTML。标签引用是什么?它在服务器上寻找一个不存在的资源(图像文件),因此自然不会显示任何内容。服务器日志还将显示这些图像请求的404个错误。
这是因为图像并不是页面的一部分。这是一个完全独立的资源,页面只是在引用它,浏览器的工作是将它放置到位。因此,您需要创建一个单独的资源(PHP文件)来提供该图像。
我的PHP有点生疏,所以我将参考许多在线示例和教程来了解细节。但结构基本上是这样的:
A页,主机页:
从数据库中获取有关图像的信息。其ID、其img文本(如果适用)等。使用此信息构建alt标记。类似于:

echo '<img src="/images/dbimage.php?id=' . $id_from_db . '" alt="' . $alt_from_db . '"/>';

B页,图像页:
从数据库中获取实际的图像(blob)及其内容类型(如果也是动态的)。在这之前不写输出。将response header's content-type设置为图像的内容类型,将原始图像字节写入输出,结束输出。
同样要记住的一点是,图像不会作为页面的一部分发送到浏览器。它是从对服务器的完全独立的请求中获取的完全独立的资源。您只需要将该请求与页面本身分开处理。
(注意,例如,如果您导航到为img标记生成的URL,那么服务器将只显示图像。不需要主机页。)

10-05 20:17
查看更多