Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在codeigniter中,可以在一个表单中为不同的图像上传提供多个输入/浏览文件,以便将所有文件都保存在一个db中?_Php_Mysql_Codeigniter - Fatal编程技术网

Php 在codeigniter中,可以在一个表单中为不同的图像上传提供多个输入/浏览文件,以便将所有文件都保存在一个db中?

Php 在codeigniter中,可以在一个表单中为不同的图像上传提供多个输入/浏览文件,以便将所有文件都保存在一个db中?,php,mysql,codeigniter,Php,Mysql,Codeigniter,我是这里的新手,我的研究项目非常需要帮助。我不知道如何使用codeigniter将多个图像上传到数据库中的不同字段。在过去的几天里,我尝试了很多方法,但还是失败了 我的问题是,在codeigniter中,可以在一个表单中为图像按钮提供多个输入/浏览文件,以便将所有内容保存在数据库的一个表中。我有两个文本字段,我想为每一个不同的图像。我想用第一个文本框保存一个或多个图像,用第二个文本框保存一个或多个图像 我当前的错误是只有1个图像成功上传到字段,另一个字段为空 我的控制器: public func

我是这里的新手,我的研究项目非常需要帮助。我不知道如何使用codeigniter将多个图像上传到数据库中的不同字段。在过去的几天里,我尝试了很多方法,但还是失败了

我的问题是,在codeigniter中,可以在一个表单中为图像按钮提供多个输入/浏览文件,以便将所有内容保存在数据库的一个表中。我有两个文本字段,我想为每一个不同的图像。我想用第一个文本框保存一个或多个图像,用第二个文本框保存一个或多个图像

我当前的错误是只有1个图像成功上传到字段,另一个字段为空

我的控制器:

public function create(){
    //form validation sebelum mengeksekusi QUERY INSERT
    $this->form_validation->set_rules('nama', 'Nama Property', 'required');
    $this->form_validation->set_rules('deskripsi_singkat', 'Deskripsi Singkat', 'required');
    $this->form_validation->set_rules('deskripsi_lengkap', 'Deskripsi Lengkap', 'required');
    $this->form_validation->set_rules('harga_range', 'Price Range', 'required|integer');
    $this->form_validation->set_rules('unit', 'Total Unit', 'required|integer');
    //$this->form_validation->set_rules('userfile', 'Product Image', 'required');

    if ($this->form_validation->run() == FALSE)
    {
        $this->load->view('backend/form_tambah_product');
    } else {
        //load uploading file library

        $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'jpg|png';
        $config['max_size'] = '300'; //MB
        $config['max_width']  = '2000'; //pixels
        $config['max_height']  = '2000'; //pixels

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

        if ( ! $this->upload->do_upload('gambar'))
        {
            //file gagal diupload -> kembali ke form tambah
            $this->load->view('backend/form_tambah_product');
        } else {

            $upload_data = $this->upload->data();
        }

        $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'jpg|png';
        $config['max_size'] = '300'; //MB
        $config['max_width']  = '2000'; //pixels
        $config['max_height']  = '2000'; //pixels

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

        if ( ! $this->upload->do_upload('gambar1'))
        {
            //file gagal diupload -> kembali ke form tambah
            $this->load->view('backend/form_tambah_product');
        } else {

            $upload_data2 = $this->upload->data();
        }
            //file berhasil diupload -> lanjutkan ke query INSERT
            // eksekusi query INSERT

            $data_product = array(
                'nama'          => set_value('nama'),
                'deskripsi_singkat' => set_value('deskripsi_singkat'),
                'deskripsi_lengkap' => set_value('deskripsi_lengkap'),
                'harga_range'           => set_value('harga_range'),
                'unit'          => set_value('unit'),
                'image'=>$upload_data['file_name'],
                'blok_plan'=>$upload_data2['file_name']
            );

            $this->model_products->create($data_product);   
        }
     }
视图:

<div><?= validation_errors() ?></div>
            <?= form_open_multipart('products/create', ['class'=>'form-horizontal']) ?>

                  <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">Nama Property</label>
                    <div class="col-sm-10">
                      <input type="text" class="form-control" name="nama" placeholder="" value="<?= set_value('nama') ?>">
                    </div>
                  </div>

                  <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">Deskripsi Singkat</label>
                    <div class="col-sm-10">
                      <input type="text" class="form-control" name="deskripsi_singkat" placeholder="" value="<?= set_value('deskripsi_singkat') ?>">
                    </div>
                  </div>

                  <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">Deskripsi Lengkap</label>
                    <div class="col-sm-10">
                      <textarea class="form-control" name="deskripsi_lengkap"><?= set_value('deskripsi_lengkap') ?></textarea>
                    </div>
                  </div>

                  <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">Price Range</label>
                    <div class="col-sm-10">
                      <input type="text" class="form-control" name="harga_range" placeholder="" value="<?= set_value('harga_range') ?>">
                    </div>
                  </div>

                  <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">Total Unit</label>
                    <div class="col-sm-10">
                      <input type="text" class="form-control" name="unit" placeholder="" value="<?= set_value('unit') ?>">
                    </div>
                  </div>

                  <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">Property Image</label>
                    <div class="col-sm-10">
                      <input type="file" class="form-control" name="gambar" >
                    </div>
                  </div>

                  <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">Blok Plan</label>
                    <div class="col-sm-10">
                      <input type="file" class="form-control" name="gambar1" >
                    </div>
                  </div>

                  <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                      <button type="submit" class="btn btn-default">Save</button>
                    </div>
                  </div>

            <?= form_close() ?>
        </div>
        <div class="col-md-1"></div>
    </div>


    <script>
        $(document).ready(function(){
            $('#myTable').DataTable();
        });
    </script>

为此使用jquery,也可以使用select2或Selected库。请参阅如何使用select2进行多输入:


如果您知道如何使用jquery和基本php,您将可以做到这一点。

为此使用jquery,或者您可以使用select2或Selected库。请参阅如何使用select2进行多输入:


如果你知道如何使用jquery和基本php,你就会这样做。

最后,感谢大家的参考

public function create(){
    //form validation sebelum mengeksekusi QUERY INSERT
    $this->form_validation->set_rules('nama', 'Nama Property', 'required');
    $this->form_validation->set_rules('deskripsi_singkat', 'Deskripsi Singkat', 'required');
    $this->form_validation->set_rules('deskripsi_lengkap', 'Deskripsi Lengkap', 'required');
    $this->form_validation->set_rules('harga_range', 'Price Range', 'required|integer');
    $this->form_validation->set_rules('unit', 'Total Unit', 'required|integer');
    //$this->form_validation->set_rules('userfile', 'Product Image', 'required');

    if ($this->form_validation->run() == FALSE)
    {
        $this->load->view('backend/form_tambah_product');
    } else {
        //load uploading file library

        $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'jpg|png';
        $config['max_size'] = '300'; //MB
        $config['max_width']  = '2000'; //pixels
        $config['max_height']  = '2000'; //pixels

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

        if ( ! $this->upload->do_upload('gambar'))
        {
            //file gagal diupload -> kembali ke form tambah
            $this->load->view('backend/form_tambah_product');
        } else {

        $upload_data = $this->upload->data();

        $config2['upload_path'] = './uploads/';
        $config2['allowed_types'] = 'jpg|png';
        $config2['max_size']    = '300'; //MB
        $config2['max_width']  = '2000'; //pixels
        $config2['max_height']  = '2000'; //pixels

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

        if ( ! $this->upload->do_upload('gambar1'))
        {
            //file gagal diupload -> kembali ke form tambah
            $this->load->view('backend/form_tambah_product');
        } else {

            $upload_data2 = $this->upload->data();

            //file berhasil diupload -> lanjutkan ke query INSERT
            // eksekusi query INSERT

            $data_product = array(
                'nama'          => set_value('nama'),
                'deskripsi_singkat' => set_value('deskripsi_singkat'),
                'deskripsi_lengkap' => set_value('deskripsi_lengkap'),
                'harga_range'           => set_value('harga_range'),
                'unit'          => set_value('unit'),
                'image'=>$upload_data['file_name'],
                'blok_plan'=>$upload_data2['file_name']
            );

            $this->model_products->create($data_product);
        }
            redirect('products');   
        }
     }
}       

最后,谢谢大家的推荐

public function create(){
    //form validation sebelum mengeksekusi QUERY INSERT
    $this->form_validation->set_rules('nama', 'Nama Property', 'required');
    $this->form_validation->set_rules('deskripsi_singkat', 'Deskripsi Singkat', 'required');
    $this->form_validation->set_rules('deskripsi_lengkap', 'Deskripsi Lengkap', 'required');
    $this->form_validation->set_rules('harga_range', 'Price Range', 'required|integer');
    $this->form_validation->set_rules('unit', 'Total Unit', 'required|integer');
    //$this->form_validation->set_rules('userfile', 'Product Image', 'required');

    if ($this->form_validation->run() == FALSE)
    {
        $this->load->view('backend/form_tambah_product');
    } else {
        //load uploading file library

        $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'jpg|png';
        $config['max_size'] = '300'; //MB
        $config['max_width']  = '2000'; //pixels
        $config['max_height']  = '2000'; //pixels

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

        if ( ! $this->upload->do_upload('gambar'))
        {
            //file gagal diupload -> kembali ke form tambah
            $this->load->view('backend/form_tambah_product');
        } else {

        $upload_data = $this->upload->data();

        $config2['upload_path'] = './uploads/';
        $config2['allowed_types'] = 'jpg|png';
        $config2['max_size']    = '300'; //MB
        $config2['max_width']  = '2000'; //pixels
        $config2['max_height']  = '2000'; //pixels

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

        if ( ! $this->upload->do_upload('gambar1'))
        {
            //file gagal diupload -> kembali ke form tambah
            $this->load->view('backend/form_tambah_product');
        } else {

            $upload_data2 = $this->upload->data();

            //file berhasil diupload -> lanjutkan ke query INSERT
            // eksekusi query INSERT

            $data_product = array(
                'nama'          => set_value('nama'),
                'deskripsi_singkat' => set_value('deskripsi_singkat'),
                'deskripsi_lengkap' => set_value('deskripsi_lengkap'),
                'harga_range'           => set_value('harga_range'),
                'unit'          => set_value('unit'),
                'image'=>$upload_data['file_name'],
                'blok_plan'=>$upload_data2['file_name']
            );

            $this->model_products->create($data_product);
        }
            redirect('products');   
        }
     }
}       

你面临什么问题?有错误吗?我想这会对你有帮助。那些链接没有解决我的问题,先生。。但是谢谢@KevalRathi@IndrasinhBihola我当前的错误是只有1个图像成功上传到字段,另一个字段为空。您面临什么问题?有错误吗?我想这会对你有帮助。那些链接没有解决我的问题,先生。。但是谢谢@KevalRathi@IndrasinhBihola我当前的错误是只有1个图像成功上传到字段,另一个字段为空。