2013-04-09 40 views
1

Im新php並想問關於上傳多個文件使用name="image[]"。這裏是我的代碼:如何簡單多個文件上傳使用名稱=「圖像[]」


HTML

<form action="" method="post" enctype="multipart/form-data"> 
    <input type="file" name="image[]" multiple="multiple"/> 
    <input type="submit" name="submit"/> 
</form> 

PHP

<?php 

    $table_name ="posts"; 

    $_POST['submit']; 
    $title = $_POST['title']; 
    $cat_id = $_POST['cat_id']; 
    $date = date('Y-m-d', strtotime($_POST['date'])); 
    $description = mysql_real_escape_string($_POST['description']); 
    $status = $_POST['status']; 


    $sql = "INSERT INTO $table_name (title,cat_id,date,description,status) VALUES ('$title','$cat_id','$date','$description','$status')"; 
    $result = mysql_query($sql);     
    $sqlImage = mysql_fetch_array(mysql_query("SELECT id FROM $table_name ORDER BY id DESC ")); 
    $parentId = $sqlImage['id']; 
    foreach ($_POST['image'] as $images) { 
     $resImage = mysql_query("INSERT INTO media (parent_id,image) VALUES ('$parentId','$images') "); 
    } 
    $_SESSION['add_content'] = true;  

    echo ' <script>location.href="'.$base_url.''.$table_name.'"</script>'; 


?> 

哪有我輸入我的形象?

+0

你想對圖像做什麼? – adamdehaven 2013-04-09 14:21:17

+0

'$ _POST ['submit'];'本身?你爲什麼這樣做?你可以做你想做的事,只要執行'foreach($ _ FILES as $ file)',然後使用'$ file',就像你通常使用'$ _FILES ['image']'[This](http:// www .php.net/manual/en/reserved.variables.files.php#106608)可能會有所幫助。 – Jon 2013-04-09 14:22:08

+0

變量'image'不是'$ _POST'類型,而是'$ _FILES' – silentw 2013-04-09 14:22:17

回答

0

首先$_POST['submit']目前沒有做任何事情。其次上傳文件需要您使用$_FILES而不是$_POST

這應該讓所有的文件上傳

foreach($_FILES['image'] as $file) 
{ 
    //do something with the data 
} 

PHP manual : $_FILES
希望這有助於!

相關問題