2014-12-08 114 views
2

我與一些多圖像上傳腳本鬥爭。php多個圖像上傳並顯示每個圖像

什麼我實現做的是,上傳多張圖像,然後每個圖像保存路徑保存到變量

,所以我後來使用的顯示器。

但是當我運行腳本我只能保存第一上傳圖像路徑值。

<form action="" method="post" enctype="multipart/form-data"> 
<p> 
<input type="file" name="pictures[]" /><br> 
<input type="file" name="pictures[]" /><br> 
<input type="file" name="pictures[]" /><br> 
<input type="file" name="pictures[]" /><br> 
<input type="submit" value="Send" /> 
</p> 
</form> 


<?php 
foreach ($_FILES["pictures"]["error"] as $key => $error) { 
    if ($error == UPLOAD_ERR_OK) { 
     $tmp_name = $_FILES["pictures"]["tmp_name"][$key]; 
     $name = $_FILES["pictures"]["name"][$key]; 
     $ext = substr(strrchr($name, "."), 1); 
     $randName = md5(rand() * time()); 
     $pathimg = "images/$randName.$ext"; 
     move_uploaded_file($tmp_name, $pathimg); 
     echo '<img src="'.$pathimg.'"; >' ; 


    } 
} 
?> 

此,如果我上傳3個圖像被上傳路徑「」

例如然後我想這3圖像上傳路徑保存到變量中的每個。所以每個變量將是$ A,$ B,$ C

,或者如果我上傳到這4圖像路徑4個圖像我也希望每一個變量,然後使用後

請賜教!謝謝

回答

1

爲什麼在上傳期間出現錯誤?

變化

foreach ($_FILES["pictures"]["error"] as $key => $error) { 

foreach ($_FILES["pictures"] as $key => $tempFile) { 

另外,成功上載後,圖像追加到一個數組。

$arr = array(); 
foreach ($_FILES["pictures"] as $key => $tempFile) { 
    // YOUR CODE 
    $arr[] = '<img src="'.$pathimg.'"; >' ; 
} 

並打印出一個循環。

if (! empty($arr)) { 
    foreach ($arr as $img) { 
    echo '<img src="'.$img.'"/>'; 
    } 
} 
+0

感謝它偉大而簡單的代碼.. :)再次感謝 – user3138338 2014-12-08 14:57:56