dpj775835868 2013-02-28 03:03
浏览 8
已采纳

codeigniter多次上传仅上传第二次

anyone can help me.. its work only if at least 2 files uploaded and then the first file didn't move to upload folder.. anyone can help.. here's my code

// view

<?php echo form_open_multipart($this->uri->uri_string());  ?>
    <p>
    <?php echo form_label('Image') ?>
    <input type="file" name="userfile[]" size="20" class="multi" accept="gif|jpg|png"/>
    </p>    

// controller

function album($id){         
    if (isset($_POST['submit']))
    {
        $config['upload_path'] = './assets/gallery/'; // server directory
        $config['allowed_types'] = 'gif|jpg|png'; // by extension, will check for whether it is an image
        $config['max_size']    = '1000'; // in kb
        $config['max_width']  = '1024';
        $config['max_height']  = '768';

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

        $files = $this->multi_upload->go_upload();

        if ( ! $files )        
        {
            $data['error'] = $this->upload->display_errors();               
        }    
        else
        {
            $data = array('upload_data' => $files);             
        }

    }       
    $id = $this->uri->segment(3);
    $data['query']      = $this->administrator_model->getAllPhoto($id);
    $data['current']    = 'home';
    $data['side']       = 'gallery';
    $data['attr']       = 'view_album';
    $data['content']    = 'backend/administrator_manage';
    $data['sidebar']    = 'backend/home_sidebar';
    $this->load->view("backend/index", $data);
}

// multi upload library i use from here

with little modification

  • 写回答

1条回答 默认 最新

  • duandu8892 2013-02-28 03:16
    关注

    It is very simple to use pure PHP multi file Upload. Look into this script

    View

    <form method="post" action="<?php echo base_url('users/upload/'); ?>" enctype="multipart/form-data">
        <label for="upload">Select : </label>
        <input type="file" name="userfile[]" id="userfile" multiple="multiple" />
        <input type="submit" name="fsubmit" id="fsubmit" value="Upload" />
    </form>
    

    Controller

    public function album($id)
    {
        if (isset($_FILES['userfile']['name'])) {
            // total files //
            $count = count($_FILES['userfile']['name']);
            // all uploads //
            $uploads = $_FILES['userfile'];
    
            for ($i = 0; $i < $count; $i++) {
                if ($uploads['error'][$i] == 0) {
                    // FCPATH = root directory project
                    move_uploaded_file($uploads['tmp_name'][$i], FCPATH . 'assets/gallery/' . $uploads['name'][$i]);
                    echo $uploads['name'][$i] . "
    ";
                }
            }
        }
    }
    

    Hope this helps. Thanks!!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器