图像显示无法正常工作。如何显示表单提交的图像,该图像适用于所有浏览器

时间:2011-11-16 20:17:36

标签: php html image data-url

我想在“preview15.php”文件中显示我的“preview16.php”提交的图像。我正在使用base64编码但它在IE 7中不起作用。我想在图像标记中使用它。我不想将上传的图像存储在任何目录中。 我的preview16.php         

<head>
</head>
<body>

    <form method="post" id="target"  enctype="multipart/form-data"    action="preview15.php">
  <input type="file" name="user_image" id="user_image"  >
            <input type="submit" name="save"  />


            </form>
          </body>

          </html>

我的preview15.php文件是这样的,

    <?php
    if(isset($_FILES['user_image'])){
    $file_name = $_FILES['user_image']['name'];
    $file_tmp = $_FILES['user_image']['tmp_name'];
    echo '<img src="data:image/jpg;base64,'.$img_str.'"   id="watermarked"/>';

   $img_src = $file_tmp;
   $imgbinary = fread(fopen($img_src, "r"), filesize($img_src));
   $img_str = base64_encode($imgbinary) ;
    echo '<img src="data:image/jpg;base64,'.$img_str.'"   id="watermarked"/>';


      } 

&GT;

1 个答案:

答案 0 :(得分:0)

在html部分我会插入图像部分,如:

<img src="preview15.php">

在php部分我只输出一个二进制文件:

if(isset($_FILES['user_image'])){
$file_tmp = $_FILES['user_image']['tmp_name'];
header('Content-Type: image/jpeg');
echo $file_tmp;
}