php codeigniter 3.1.2文件上传问题

时间:2016-12-11 08:33:23

标签: php codeigniter upload

我的CodeIgniter版本是3.1.2。

Autoload.php - >没有添加到自动加载。尝试上传时,我收到HTTP 500。

有人可以建议解决方案吗?

public function UploadProfileimage() {
        try {
            $this->load->helper(array('form', 'url'));
            $this->load->library('upload');

            $profileimagefolder = 'C:' . DIRECTORY_SEPARATOR . 'xampp' . DIRECTORY_SEPARATOR . 'htdocs' . DIRECTORY_SEPARATOR . 'jalpp';
            if (!is_dir($profileimagefolder)) {
                mkdir($profileimagefolder, 0777, TRUE);
            }
            $config['upload_path'] = $profileimagefolder . DIRECTORY_SEPARATOR;
            $config['allowed_types'] = 'gif|jpg|png';
            $config['max_size'] = 100;
            $config['max_width'] = 1024;
            $config['max_height'] = 768;


            $this->upload->initialize($config);
            if (!$this->upload->do_upload('profileimage')) {
                printv($this->upload->display_errors());
            } else {
                $data = array('upload_data' => $this->upload->data());
                $this->load->view('upload_success', $data);
            }
        } catch (Exception $e) {
            //printv($e);
            echo ($e->getMessage());
        }
    }

输出:

enter image description here

2 个答案:

答案 0 :(得分:1)

我通过使用2.2 CI版本的上传库和3.1.2中的mime类型来解决这个问题 现在工作正常。

感谢您的回复

答案 1 :(得分:0)

这通常表示PHP中的语法错误。您的PHP错误日志将有一个条目指向您错误的文件和行号。

如果我要推测原因,我会猜测你的printv()函数调用。 printv()不是本机PHP函数,因此除非您在其他地方定义它,否则可能是原因。