問題:
使用單一表單元素上傳多個檔案會導致錯誤「您沒有選擇檔案
解決方案:
問題出在CodeIgniter上傳函式庫的初始化上。 multiple屬性時,需要調整函式庫初始化以處理多個檔案。 🎜>
初始化:上傳程式庫被初始化並配置為處理多個檔案通過在$_FILES 中定義多個索引(即images[]).
private function upload_files($path, $title, $files) { $config = array( 'upload_path' => $path, 'allowed_types' => 'jpg|gif|png', 'overwrite' => 1, ); $this->load->library('upload', $config); $images = array(); foreach ($files['name'] as $key => $image) { $_FILES['images[]']['name'] = $files['name'][$key]; $_FILES['images[]']['type'] = $files['type'][$key]; $_FILES['images[]']['tmp_name'] = $files['tmp_name'][$key]; $_FILES['images[]']['error'] = $files['error'][$key]; $_FILES['images[]']['size'] = $files['size'][$key]; $fileName = $title . '_' . $image; $images[] = $fileName; $config['file_name'] = $fileName; $this->upload->initialize($config); if ($this->upload->do_upload('images[]')) { $this->upload->data(); } else { return false; } } return $images; }
輸入欄位上的multiple 屬性要求伺服器處理多個檔案上傳。 [] 後綴,允許發布多個文件。循環分別處理每個文件,用相應的資料初始化$_FILES 並將file_name 設定為與文件名稱連接的標題。 images[]') 上傳,成功上傳會加入到$images數組中。
以上是如何解決在CodeIgniter中上傳多個檔案時出現「您沒有選擇要上傳的檔案」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!