这是我第一次使用codeigniter来建立我的学校项目。
让我直截了当。
我可以获得我的POST请求,但form_upload();
除外这是我的样本表格:
<?php
echo form_open('admin/test_upload');
echo form_input(array('name' => 'title'));?><br/><?
echo form_upload(array('name' => 'file'));
echo form_submit(array('name' => 'submit', 'value' => 'submit'));
echo form_close();
?>
这是我的控制器:
function test_upload(){
$data['header'] = "TEST UPLOAD";
var_dump($_POST) ; //basically, this is function echoes back the post array.
$this->load->view('admin/dashboard_view', $data);
}
这是输出
array(2) {
["title"]=>
string(3) "asd"
["submit"]=>
string(6) "submit"
}
//The ["file"] is missing.... wHAT!?>
有人能帮助我吗?
答案 0 :(得分:2)
文件上传需要在其表单标记中包含enctype="multipart/form-data"
,因此您应该使用它来打开表单:
echo form_open_multipart('admin/test_upload');
此外,正如其他人所提到的,上传的文件将位于$_FILES
而不是$_POST
。
答案 1 :(得分:1)
你正在寻找错误的超全球($_POST
)。检查$_FILES
并确保表单的enctype
是“multipart / data”。