CI上传图片出现“You did not select a file to upload”错误的解决办法

2013-02-02 14:21:29来源:西部e网作者:

Codeigniter自带的文件上传类非常好用,您可以设置指定上传某类型的文件及指定大小的文件。不过在使用的过程中需要注意一些小问题,否则会让你感到措手不及。

Codeigniter自带的文件上传类非常好用,您可以设置指定上传某类型的文件及指定大小的文件。不过在使用的过程中需要注意一些小问题,否则会让你感到措手不及。

在笔者使用Codeigniter的upload上传类时候,总是出现“You did not select a file to upload”错误,从代码里面看并没有什么错误,这是怎么回事呢?

1、文件域的名字被修改

方法一:

找了半天发现笔者将Views文件的文件域的名字修改成了fileimg,而CI默认的文件域的名字是userfile,即形如:<input type="file" name="userfile" size="20" />。这个是不能修改的,否则就会找不到上传文件。

原理就是:$this->upload->do_upload()默认上传文件的表单名为userfile。

方法二:

其实还有解决方法,如果文件域是其他名字。比如:

<input type="file" name="imgfile" size="20" />

将   $this->upload->do_upload();

改为 $this->upload->do_upload(‘imgfile’);

这样就可以了!

2、form表单类型

form表单需要使用form_open_multipart,形成HTML的时候会增加了一个属性enctype="multipart/form-data",这个其实是常识了,注意一下就好。
 
 

关键词:CIcodeigniterphp

赞助商链接: