CI 的文件上传类有bug!
代码很简单,就是把上传文件重命名一下$avatar_name = date('YmdHis').$_SESSION['id'].".".$fileextname;
if ( ! $this->upload->do_upload($avatar_name))
{
结果 CI就处理不了了。。。
看他的核心代码 ,第一句就报错 过不去了!
public function do_upload($field = 'userfile')
{
print_r($_FILES);
// Is $_FILES[$field] set? If not, no reason to continue.
if ( ! isset($_FILES[$field]))
{
$this->set_error('upload_no_file_selected');
return FALSE;
}
我都重新命名文件了,他用我重命名的新文件名去上传的_FILES 数组中查找文件名,当然找不到了!这句就过去不了。。:o
这是他例子里面的方法啊如果你想在执行do_upload函数之前自定义自己的文件域名称,可通过以下方法实现:
$field_name = "some_field_name";
$this->upload->do_upload($field_name) ...
$this->upload->do_upload($field_name)
这个$field_name是表单文件域的名字...不是神马文件名... ls正解。。。。。。。。。 lamtin 发表于 2011-4-30 21:15 static/image/common/back.gif
...
$this->upload->do_upload($field_name)
这个$field_name是表单文件域的名字...不是神马文件名... ...
请教,那如果想用文件名上传,这一句应该怎么写呢? bogy 发表于 2011-8-1 16:07 static/image/common/back.gif
请教,那如果想用文件名上传,这一句应该怎么写呢?
不明白你要什么,这里是 $field_name 不是 $file_name
你可以通过 $field_name 取到你上传的文件名。
建议仔细阅读 PHP 手册,并且查看 $_FILES 数组内容。
PS: 你看一下手册里说的是“文件域名称”而不是“文件名称”,差别很大的。 Hex 发表于 2011-8-1 16:17 static/image/common/back.gif
不明白你要什么,这里是 $field_name 不是 $file_name
你可以通过 $field_name 取到你上传的文件名。
建 ...
多谢hex老大的指点。我的问题详述在后面的一个贴子了。可否指点?
问题如下:
CI上传的例子已经测试成功了,可以正常上传。
但是想自己扩展写一点的时候,比如三个file input的域,分别是file1,file2,file3,
这时候do_upload的参数应该怎么写呢,
用文件名肯定不对,循环调用file1,file2,file3也说没有选中文件。
bogy 发表于 2011-8-1 16:19 static/image/common/back.gif
多谢hex老大的指点。我的问题详述在后面的一个贴子了。可否指点?
问题如下:
CI上传的例子已经测试成功了 ...
$this->upload->do_upload('file1'); bogy 发表于 2011-8-1 16:19 static/image/common/back.gif
多谢hex老大的指点。我的问题详述在后面的一个贴子了。可否指点?
问题如下:
CI上传的例子已经测试成功了 ...
foreach()
{
$this->upload->initialize($config);
$this->upload->do_upload();
} CI的upload没问题...不过现在无法上传file数组弄得我只能用自己写的upload类 zhouli520 发表于 2011-8-2 09:47 static/image/common/back.gif
CI的upload没问题...不过现在无法上传file数组弄得我只能用自己写的upload类
可以批量传,每次do_upload之前都要$this->upload->initialize($config);才可以
页:
[1]
2