当我尝试使用以下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);
?>
现在,如果我删除所有代码并仅用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'/> ";
?>
问题是什么?如何解决?我想上传图片并在网页上显示图片。
答案 0 :(得分: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'/> ";