3

我有一个用户可以注册的页面。他在此过程中上传了个人资料图片。我想限制大小,但除了 $config['maxsize'] 之外,没有过多强调 codeigniter 文档。我尝试了以下操作,但没有收到任何消息。我将大小设置为 10 (KB) 只是为了测试。我是否必须以某种方式处理它才能将消息传达给我的视图?

public function add_user()
    {


        $config['upload_path']   = './uploads/';        
        $config['allowed_types'] = 'gif|jpg|png|jpeg';
        $config['max_size'] = '10';
        //$config['max_width'] = '1024';
        //$config['max_height'] = '768';

        $this->load->library('upload', $config);
        $fullImagePath;
        if (isset($_FILES['userfile']) && !empty($_FILES['userfile']['name']))
          {
          if ($this->upload->do_upload('userfile'))
          {
            // set a $_POST value for 'image' that we can use later
...

顺便说一句,这段代码在我的模型中。

4

4 回答 4

4

@Chetan Wadhwa,

你确定大小是字节(不是 KB)。请参阅 codeigniter 文档: http: //www.codeigniter.com/user_guide/libraries/file_uploading.html,必须以 KB 为单位。

于 2014-05-22T13:32:42.420 回答
1

这个大小不是以 KB 为单位,而是以字节为单位,因此对于 10KB,您应该写入 (10*1024) 字节或“10240”

于 2013-08-29T09:45:01.323 回答
0
<?php

class upload extends CI_Controller {

function __construct()
{
    parent::__construct();
    $this->load->helper(array('form', 'url'));
}

function index()
{
    $this->load->view('upload_form', array('error' => ' ' ));
}

function do_upload()
{
    $config['upload_path'] = './uploads/';
    $config['allowed_types'] = 'gif|jpg|png';
    $config['max_size'] = '100';
    $config['max_width']  = '1024';
    $config['max_height']  = '768';


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

    if ( ! $this->upload->do_upload())
    {
        $error = array('error' => $this->upload->display_errors());

        $this->load->view('upload_form', $error);
    }
    else
    {
        $data = array('upload_data' => $this->upload->data());

        $this->load->view('upload_success', $data);
    }

}
}
?>
于 2013-04-25T07:42:57.833 回答
0

您不需要处理错误消息 CI 会注意这种情况,因此请按照codeIgniter 用户指南中指定的上传类教程进行操作。

于 2013-04-25T06:50:18.903 回答