0

我试图从 PHP 数据库中读取图像,但它在整个页面上显示图像。我想在 html 页面上显示图像。请帮忙

 $sql = "SELECT * FROM images";
    $result = mysql_query($sql) or die("Invalid query: " . mysql_error());

    while($row = mysql_fetch_array($result))
          { 
             header("Content-type: image/jpeg");            
              echo $row[1];                     
          }     
4

3 回答 3

0

您可以像这样显示它:

      while($row = mysql_fetch_array($result))
      { 
         echo "<img src=$row[1] />";                 
      }     
于 2013-06-09T11:45:25.920 回答
0

好的,如果图像作为 blob 类型存储在 db 中......这是一个想法(我想有更优雅的解决方案,但这个也可以)。

在您的主文件中,在 html 输出中,进行此循环(当然,在页面开头的 session_start()):

$i=-1;

    while($row = mysql_fetch_array($result))
          { 
          $i++;



         $_SESSION['img'][]=$row['data']; //'data' is field name in my db, you //should change it to appropriate field name... 



         echo "<img src='img.php?id=".$i."'>";





          } 

您的 img.php 应如下所示:

session_start();
header("Content-type: image/jpeg");
$id=$_GET['id'];
echo $_SESSION['img'][$id];
exit;

所以,这将适用于图像数组,也适用于单个图像......所以->代码将图像数据存储在会话数组中,img.php 显示来自数组的图像,在主页的内部循环......

于 2013-06-09T13:11:39.330 回答
0

如果将图像路径存储在数据库中。

使用它来显示 200*200 大小的图像。

while($row = mysql_fetch_array($result))
  { 
     echo "<img with='200' height='200' src=$row[1] />";                 
  }    
于 2013-06-09T11:51:21.227 回答