ホームページ > バックエンド開発 > PHPチュートリアル > 単一の入力フィールドを使用して CodeIgniter で複数のファイルのアップロードを実現するにはどうすればよいですか?

単一の入力フィールドを使用して CodeIgniter で複数のファイルのアップロードを実現するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-28 19:00:12
オリジナル
232 人が閲覧しました

How to Achieve Multiple File Uploads in CodeIgniter Using a Single Input Field?

単一入力による CodeIgniter での複数ファイルのアップロード

この記事では、CodeIgniter の単一要素を使用した複数ファイルのアップロードに関するクエリについて詳しく説明します。提供されたフォーム、コントローラー、ファイルのアップロード方法、および発生した問題を評価することで、この問題を詳細に分析して解決し、包括的な解決策を提供します。

最初の問題は、ファイルのアップロード方法が適切に調整されていないことが原因でした。受信ファイル入力。 @Denmark が提案した調整では、複数のファイル選択に一致するようにフォーム入力名を「images」から「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;
}
ログイン後にコピー

この改訂された方法に従うことで、CodeIgniter の単一の入力要素を使用して複数のファイルを正常にアップロードできます。

以上が単一の入力フィールドを使用して CodeIgniter で複数のファイルのアップロードを実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート