可以';t使用base64_encode显示blob图像


Can't display blob image with base64_encode

我在显示作为blob存储在数据库中的图像时遇到问题。在localhost中,它运行得很好,但在服务器上,它没有显示任何内容。有人能帮帮我吗。我已经上网寻找答案,阅读了许多论坛,但仍然找不到答案。

这是我的密码。

<form action="index.php" method="POST" enctype="multipart/form-data">
                  File:
                  <input type="file" name="image"> <input type="submit" value="upload">
                </form>
                <?php 
                $file = $_FILES['image']['tmp_name'];
                if(!isset($file))
                  echo "Please select some image";
                else 
                {
                  $tmpImageName=$_FILES['image']['tmp_name'];
                  $image_name = addslashes($_FILES['image']['name']);
                  $image_size = getimagesize($_FILES['image']['tmp_name']);
                  $handle      = fopen( $tmpImageName, 'r' );
                  $content = fread( $handle, filesize( $tmpImageName ) );
                  fclose($handle);
                  if($image_size==FALSE)
                    echo "That's not an image";
                  else 
                  {
                    $sql="insert into image values ('','$image_name','".mysql_real_escape_string($content)."')";
                    mysql_query($sql) or die(mysql_error());

                    $res = mysql_query("SELECT * FROM image "); 
                    while ($row = mysql_fetch_assoc($res)) 
                    {
                      echo "<img src=data:image/jpeg;base64," . (base64_encode(($row['Image']))) . " width=60px height=60px>";
                    }
                  }
                }
                ?>

尝试

 echo '<img src="data:image/jpeg;base64,'.base64_encode($row['image']) .' "/>';