2016-05-14 96 views
0

我面临着一些问题,当我尝试上传和下面的PHP代码显示的图像:无法上传,并与PHP代码的网页显示图像

<?php 
header('Content-Type: bitmap; charset=utf-8'); 
$base=$_REQUEST['image']; 
$binary=base64_decode($base); 
$file = fopen('uploaded_image.jpg', 'wb'); 
fwrite($file, $binary); 
fclose($file); 
?> 

图片上传并位于同一具有PHP脚本的文件夹。现在 enter image description here

,如果我删除所有代码,并只用1线

<?php 
    echo "<img src='uploaded_image.jpg' width='500' height='300'/> "; 
?> 

已上传的图片代替,显示在网页上确定。 然后,我将它组合起来(上传和显示图像)。

<?php 
header('Content-Type: bitmap; charset=utf-8'); 
$base=$_REQUEST['image']; 
$binary=base64_decode($base); 
$file = fopen('uploaded_image.jpg', 'wb'); 
fwrite($file, $binary); 
fclose($file); 
echo "<img src='uploaded_image.jpg' width='500' height='300'/> "; 
?> 

这是不显示图像,似乎该图像尚未上传。 enter image description here

什么问题,我该如何解决?我想上传图片并在网页上显示图片。

+0

可以尝试删除页眉 标题( '内容类型:位图;字符集= utf-8'); 并告诉最终结果请输入 –

+0

是的,我尝试删除头标头('Content-Type:bitmap; charset = utf-8');和我上传图像确定,但当我刷新网页,图像的大小为0.所以它仍然没有图像,我刷新网页:( – Bruce

回答

0

刷新页面时没有图像,因为在这种情况下$ base = $ _ REQUEST ['image'];将会是空的(当你刷新页面时,你没有提供img上传数据。) 所以基本上它覆盖了空数据的uploaded_image.jpg。 只需检查是否为图像提供了值。你的情况:

if(!empty($_REQUEST['image'])) { 
    $base=$_REQUEST['image']; 
    $binary=base64_decode($base); 
    $file = fopen('uploaded_image.jpg', 'wb'); 
    fwrite($file, $binary); 
    fclose($file); 
} 
echo "<img src='uploaded_image.jpg' width='500' height='300'/> "; 
+0

没有biggie; 干杯:) –