2016-05-14 84 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; 乾杯:) –