2017-06-08 40 views
1

私は画像を添付する7つの入力ファイルを持っています。投稿ボタンをクリックすると、アップロードファイルのサイズは10 MB(すべての画像を含む)に制限されます。アップロードされたファイルのサイズをすべて取得する方法は?

<input name="a" id="file-0" type="file" class="dropify"/> 
<input name="b" id="file-0" type="file" class="dropify"/> 
<input name="c" id="file-0" type="file" class="dropify"/> 
+0

選択画像:の ..複数のファイルを選択するには.. 1つのFIle Uploderで –

答えて

0
$('form').submit(function(e) {  
    if(!($('#file')[0].files[0].size < 10485760 && get_extension($('#file').val()) == 'jpg')) { // 10 MB (this size is in bytes) 
     //Prevent default and display error 
     alert("File is wrong type or over 10Mb in size!"); 
     e.preventDefault(); 
    } 
}); 

OR

<form method="post" enctype="multipart/form-data" action="upload.php"> 
    <input type="file" name="file" id="file" multiple/> 
    <input type="submit" name="submit" value="Submit" /> 
</form> 

<script> 
document.forms[0].addEventListener('submit', function(evt) { 
    var file = document.getElementById('file').files[0]; 

    if(file && file.size < 10485760) { // 10 MB (this size is in bytes) 
     //Submit form   
    } else { 
     //Prevent default and display error 
     evt.preventDefault(); 
    } 
}, false); 
</script> 

フィドル:http://jsfiddle.net/go4vaibhav/msuL0yta/33/

+0

それでは、新しいファイルのサイズですべてのファイルを集めて計算し、condintion ... fileに1つのvarを保存する必要があります。サイズ<10485760 ... so on .. –

0
public function do_upload() 
{ 
     $config['upload_path']   = './uploads/'; 
     $config['allowed_types']  = 'gif|jpg|png'; 
     $config['max_size']    = 100; 
     $config['max_width']   = 1024; 
     $config['max_height']   = 768; 

     $this->load->library('upload', $config); 

     if (! $this->upload->do_upload('userfile')) 
     { 
       $error = array('error' => $this->upload->display_errors()); 

       $this->load->view('upload_form', $error); 
     } 
     else 
     { 
       $data = array('upload_data' => $this->upload->data()); 

       $this->load->view('upload_success', $data); 
     } 
} 

これは、ファイルに関連するデータの全てを含む配列を返すヘルパーメソッドでありますあなたはアップロードされました。

Array 
(
    [file_name]  => mypic.jpg 
    [file_type]  => image/jpeg 
    [file_path]  => /path/to/your/upload/ 
    [full_path]  => /path/to/your/upload/jpg.jpg 
    [raw_name]  => mypic 
    [orig_name]  => mypic.jpg 
    [client_name] => mypic.jpg 
    [file_ext]  => .jpg 
    [file_size]  => 22.2 
    [is_image]  => 1 
    [image_width] => 800 
    [image_height] => 600 
    [image_type] => jpeg 
    [image_size_str] => width="800" height="200" 
) 

配列から一つの要素を返すために:

$this->upload->data('file_size');  // File size in kilobytes 
関連する問題