2016-04-28 14 views
0

複数のファイルに対して複数のファイルを送信すると問題が発生します。複数のファイルをphpとhtml5形式で送信します

if(isset($_FILES['pliki'])){ 
    $errors= array(); 
    $file_name = $_FILES['pliki']['name']; 
    $file_size =$_FILES['pliki']['size']; 
    $file_tmp =$_FILES['pliki']['tmp_name']; 
    $file_type=$_FILES['pliki']['type']; 
    $file_ext=strtolower(end(explode('.',$_FILES['pliki']['name']))); 

    $expensions= array("jpeg","jpg","png","docx","doc","pdf"); 

    if(in_array($file_ext,$expensions)=== true){ 
     move_uploaded_file($file_tmp,"../../site/assets/files/".$pp->id."/".strtolower($sanitizer->name($file_name))); 
     $pp->pliki->add($file_name); 
    } 
} 

私の入力のようになります。あなたがそれらを介してループする必要があるので、

<input type="file" id="pliki" name="pliki[]" multiple> 
+0

'$ _FILES'をループし、' $ FILES ['pliki'] [] ['name'] ' – nikamanish

答えて

0

$_FILES['pliki']は配列になります。私は次のようなものを使います:

$extensions = array("jpeg","jpg","png","docx","doc","pdf"); 
//extensions < spelling changed from yours 

foreach($_FILES['pliki'] as $i => $file){ 
    $file_name = $file['name']; 
    $file_size =$file['size']; 
    $file_tmp =$file['tmp_name']; 
    $file_type=$file['type']; 
    $file_ext=strtolower(end(explode('.',$file_name))); 
    //and whatever else you want to check for each file 
} 
関連する問題