2014-02-11 37 views
3

將圖像上傳到文件夾後。如何顯示圖像..如何在php中上傳後顯示圖像?

其upload.php的我

<?php 
$allowedExts = array("gif", "jpeg", "jpg", "png"); 
$temp = explode(".", $_FILES["file"]["name"]); 
$extension = end($temp); 
if ((($_FILES["file"]["type"] == "image/gif") 
|| ($_FILES["file"]["type"] == "image/jpeg") 
|| ($_FILES["file"]["type"] == "image/jpg") 
|| ($_FILES["file"]["type"] == "image/pjpeg") 
|| ($_FILES["file"]["type"] == "image/x-png") 
|| ($_FILES["file"]["type"] == "image/png")) 
&& ($_FILES["file"]["size"] < 20000000000000000000000) 
&& in_array($extension, $allowedExts)) 
    { 
    if ($_FILES["file"]["error"] > 0) 
    { 
    echo "Return Code: " . $_FILES["file"]["error"] . "<br>"; 
    } 
    else 
    { 
    echo "Upload: " . $_FILES["file"]["name"] . "<br>"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br>"; 
    echo "Size: " . ($_FILES["file"]["size"]/1024) . " kB<br>"; 
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>"; 

    if (file_exists("upload/" . $_FILES["file"]["name"])) 
     { 
     echo $_FILES["file"]["name"] . " already exists. "; 
     } 
    else 
     { 
     move_uploaded_file($_FILES["file"]["tmp_name"], 
     "upload/" . $_FILES["file"]["name"]); 
     echo "Stored in: " . "upload/" . $_FILES["file"]["name"]."<br>"; 

$image=$_FILES["file"]["name"]; /* Displaying Image*/ 
     $img="upload/".$image; 
     echo '<img src= "upload/".$img>'; 

     } 
    } 
    } 
else 
    { 
    echo "Invalid file"; 
    } 
?> 

圖像上傳罰款。但圖像不顯示。一個小盒子只顯示。

這部分沒有工作...

/* Displaying Image*/ 
     $image=$_FILES["file"]["name"]; 
       $img="upload/".$image; 
       echo '<img src= "upload/".$img>'; 

如何顯示上傳成功後的圖像?

+0

嘗試'「」' – putvande

+0

'echo'';'是什麼html輸出?並且可以訪問'src'屬性的url? – SaidbakR

回答

1

試試這個:

header('Content-Type: image/jpeg'); 
readfile($imgPath); 
0

你混淆了一些報價。它應該是:

$image = $_FILES["file"]["name"]; 
$img = "upload/".$image; 
echo "<img src=\"upload/$img\">"; 
1

正如你已經在$ IMG把 「上傳」

$img="upload/".$image; 

你並不需要把它放在src了

echo '<img src= "'.$img.'">'; 
0

別把$ img放在報價單上。當你這樣做的輸出僅僅是$ IMG,不能上傳/ ...

呼應< img src=" ' ,$img ,' ">;

1

我曾嘗試你的代碼及其工作精細只需要更改線路

echo'<img src= "upload/".$img>'; 

echo'<img src="'.$img.'">'; 
-3

只是這樣做

echo '<img src="upload/'.$file_name.' "/> 

我們必須採用$file_name變量,因爲.. ""(雙引號)只能在變量中返回文本 - 它不能返回二進制數來顯示圖像!