Codeigniter文件上传错误:您没有选择要上传的文件

时间:2016-01-17 23:09:04

标签: php codeigniter codeigniter-3 codeigniter-upload

这真的很奇怪,我试图检查谷歌中与我的问题类似的顶级建议,但我相信这些不是这个的答案。我正在使用默认的'userfile'。谁能告诉我我在这里缺少什么?

我的表格结构:

<div class="panel-body">
    <?php echo form_open_multipart('register','role="studentForm" class="form-horizontal'); ?>

    <div class="form-group">
        <label for="userfile" class="col-lg-3 col-md-3 col-sm-3 control-label">Profile Picture</label>
        <div class="col-lg-9 col-md-9 col-sm-9">
                <input type="file" name="userfile" size="20" id="userfile">
        </div>
    </div>  
    <button type="submit" class="btn btn-default btn-login-style btn-sm pull-right">Submit</button>
    <?php echo form_close(); ?>
</div>

我的控制器的结构:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Register extends CI_Controller{

    function __construct(){
        parent::__construct();
    }

    function index(){

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

        $this->upload->initialize($config); 



        if(!$this->upload->do_upload()){

            $error = array('error'=>$this->upload->display_errors());

            echo $error['error'];
        }else{

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

?>

注意:'upload'库会自动加载到autoload.php中。

4 个答案:

答案 0 :(得分:0)

尝试在if else语句之前删除$this->upload->do_upload();? 不需要指定两次。

答案 1 :(得分:0)

您已拨打$this->upload->do_upload();两次。请删除第一个。

使用$this->upload->do_upload('userfile');代替$this->upload->do_upload();

答案 2 :(得分:0)

好吧,我明白了。我在班上错过了引用"

错误的代码:

<?php echo form_open_multipart('register','role="studentForm" class="form-horizontal'); ?> 

这里的修正:

<?php echo form_open_multipart('register','role="studentForm" class="form-horizontal"'); ?>

答案 3 :(得分:0)

您视图中的第二行,请纠正

<?php echo form_open_multipart('register','role="studentForm" class="form-horizontal" '); ?>