dongluan6784 2018-12-13 11:35
浏览 50
已采纳

PHP Codeigniter Do Upload功能不起作用

i want to use do_upload function codeigniter and i have tried to solving this code with any tutorial. Please help me to solve this problem.

in controller:

function simpan_berita(){
    $this->load->library('upload');
    $config['upload_path'] = './assets/images/';
    $config['allowed_types'] = 'gif|jpg|png|jpeg|bmp';
    $config['encrypt_name'] = TRUE;

            $this->upload->initialize($config);
            if(!empty($_FILES['filefoto']['name']))
            {
                if ($this->upload->do_upload('filefoto'))
                {
                    $gbr = $this->upload->data();
                    //Compress Image
                    $config['image_library']='gd2';
                    $config['source_image']='./assets/images/'.$gbr['file_name'];
                    $config['create_thumb']= FALSE;
                    $config['maintain_ratio']= FALSE;
                    $config['quality']= '60%';
                    $config['width']= 840;
                    $config['height']= 450;
                    $config['new_image']= './assets/images/'.$gbr['file_name'];
                    $this->load->library('image_lib', $config);
                    $this->image_lib->resize();

                    ...
                    echo $this->session->set_flashdata('msg','success');
                    redirect('user/berita');
                }else{
                    echo $this->session->set_flashdata('msg','warning');
                    redirect('user/berita');
                }

            }else{
                redirect('admin/berita');
            }
}

and this is my views code:

        <form action="<?php echo base_url().'user/berita/simpan_berita'?>" method="post" enctype="multipart/form-data">
          ...
          <div class="form-group">
            <label>Gambar</label>
            <input type="file" name="filefoto" style="width: 100%;" required>
          </div>
        </div>
      </div>
    </form>

When i try to upload, other else condition will be run:

            else{
                echo $this->session->set_flashdata('msg','warning');
                redirect('user/berita');
            }

i need do_upload condition will be run. Please comment to help. Thankyou..

  • 写回答

2条回答 默认 最新

  • douzhonglong3789 2018-12-13 12:21
    关注

    Two possibilities come to mind...

    Either your /assets/images/directory is not accesible (wrong path and/or not writable by codeigniter), in which case you should double check the path and/or try changing permissions of the directory to 777 and, if everything starts working, work your way down to a more reasonable permission level.

    Or, this is another case (i've read many, but so far I still thought it was just a hoax) that CI's upload library doesn't seem to like it if you use anything other than userfile as the field name being uploaded. Try changing all references of filefoto to userfile in both the view and the controller and see if it magically starts to work :)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面