Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menyelesaikan Ralat \'Anda Tidak Memilih Fail untuk Muat Naik\' Semasa Memuat Naik Berbilang Fail dalam CodeIgniter?

Bagaimana untuk Menyelesaikan Ralat \'Anda Tidak Memilih Fail untuk Muat Naik\' Semasa Memuat Naik Berbilang Fail dalam CodeIgniter?

Barbara Streisand
Lepaskan: 2024-11-28 20:13:11
asal
341 orang telah melayarinya

How to Solve

Muat Naik Berbilang Fail dalam CodeIgniter

Masalah:

Memuat naik berbilang fail menggunakan elemen bentuk tunggal mengakibatkan ralat " Anda tidak memilih fail untuk muat naik."

Penyelesaian:

Isunya terletak pada permulaan pustaka muat naik CodeIgniter. Apabila menggunakan berbilang atribut pada medan input, adalah perlu untuk melaraskan permulaan perpustakaan untuk mengendalikan berbilang fail.

Kaedah Muat Naik Diubahsuai:

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;
}
Salin selepas log masuk

Penjelasan:

  • Permulaan: Muat naik perpustakaan dimulakan dan dikonfigurasikan untuk mengendalikan berbilang fail dengan mentakrifkan berbilang indeks dalam $_FILES (iaitu, imej[]).
  • Pengendalian Berbilang Bahagian: Atribut berbilang pada medan input memerlukan pelayan untuk mengendalikan pelbagai muat naik fail. Inisialisasi menambah akhiran [] pada nama input, membenarkan berbilang fail untuk disiarkan.
  • Data Fail: Gelung foreach memproses setiap fail secara berasingan, memulakan $_FILES dengan data yang sepadan dan menetapkan nama_fail sebagai tajuk yang digabungkan dengan nama fail.
  • Muat naik Proses: Setiap fail dimuat naik menggunakan do_upload('images[]'), dan muat naik yang berjaya ditambahkan pada tatasusunan $images.

Dengan membuat pengubahsuaian ini, anda akan dapat memuat naik berbilang fail berjaya menggunakan berbilang atribut dalam borang anda.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'Anda Tidak Memilih Fail untuk Muat Naik\' Semasa Memuat Naik Berbilang Fail dalam CodeIgniter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan