問題:
単一のフォーム要素を使用して複数のファイルをアップロードすると、エラー「ファイルを選択しませんでした「
解決策:
問題は、CodeIgniter アップロード ライブラリの初期化にあります。入力フィールドで multiple 属性を使用する場合、複数のファイルを処理できるようにライブラリの初期化を調整する必要があります。
Modified Uploadメソッド:
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; }
説明:
これらの変更を行うことで、複数のファイルを使用して複数のファイルを正常にアップロードできるようになります。フォーム内の属性
以上がCodeIgniter で複数のファイルをアップロードする際の「アップロードするファイルが選択されていません」エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。