2013-07-25 33 views
0

好吧,這可能看起來像這樣一個新手問題,但我有循環問題,我似乎無法解決。我只是想在我的第一個項目網站上上傳多個圖片。

當我發佈這個測試php頁面時,它會上傳我要求的所有文件 ;我希望上傳的所有圖像都上傳到預期的目錄中。

<?php 
$files = $_FILES['fileField']; 
for ($x = 0; $x < count($files['name']); $x++) 
{ 
     $name  = $files['name'][$x]; 
     $tmp_name = $files['tmp_name'][$x]; 
     move_uploaded_file($tmp_name, "property_images/$property_name/" . $name); 
     header("location: property_list.php"); 
     exit(); 
} 
?> 

然而,當我嘗試,包括我的解析器,但它進入正確的目錄,只有第一個文件被上傳

<?php 
if(isset($_POST['property_name'])){ 
$property_name = mysql_real_escape_string($_POST['property_name']); 
$district = mysql_real_escape_string($_POST['district']); 
$address = mysql_real_escape_string($_POST['address']); 
$property_type = mysql_real_escape_string($_POST['property_type']); 

$sql = mysql_query("SELECT id FROM mydb WHERE property_name='$property_name' LIMIT 1"); 
$propertyMatch = mysql_num_rows($sql); 
if($propertyMatch > 0) 
{ 
    echo 'Sorry, you tried to place a duplicate "Property Name" into the system, <a href="property_list.php">click here</a>'; 
exit(); 
} 

$sql = mysql_query("INSERT INTO mydb (property_name, district, address, property_type) VALUES ('$property_name','$ district','$address','$property_type')")or die (mysql_error()); 

if (!file_exists("property_images/$property_name")) 
     { 
     mkdir("property_images/$property_name"); 
     } 
$files = $_FILES['fileField']; 
for ($x = 0; $x < count($files['name']); $x++) 
{ 
     $name  = $files['name'][$x]; 
     $tmp_name = $files['tmp_name'][$x]; 
     move_uploaded_file($tmp_name, "property_images/$property_name/" . $name); 
     header("location: property_list.php"); 
     exit(); 
} 
} 
?> 

計數代碼工作正常,所以我認爲它這兩種{}雞姦或者我需要修理我的眼睛。任何幫助將超級讚賞。

+0

你的表單是否考慮到'數組'?比如'file []'例如?你的表單是什麼樣的? –

+0

是的,它確實是Fred Jocke

+0

好的,我想你需要一個'foreach'循環,我在你的發佈代碼中沒有看到。 –

回答

0

你需要添加到輸入名稱括號[]和屬性 「multiple

<form id = "upload_form" method="post" enctype="multipart/form-data" > 
    <input type="file" name="uploaded_file[]" multiple="true" id="uploaded_file" style="color:black" /><br/> 
</form> 

現在,所有上傳的文件將可通過

$_FILES['uploaded_file']['name'][0] 
$_FILES['uploaded_file']['name'][1] 
and so on 

更多信息以http://www.php.net/manual/en/features.file-upload.multiple.php

希望這一定會幫助你。

相關問題