Php 无法以codeigniter文本形式上载文件
我有一个文本表单可以工作,我有一个文件上传表单可以使用来自的确切示例工作,但我似乎无法将两者结合起来。我想要一个允许文本和文件上传的表单。文本应转到数据库,文件应转到存储,文件路径保存在数据库中 我试着加上Php 无法以codeigniter文本形式上载文件,php,forms,codeigniter,Php,Forms,Codeigniter,我有一个文本表单可以工作,我有一个文件上传表单可以使用来自的确切示例工作,但我似乎无法将两者结合起来。我想要一个允许文本和文件上传的表单。文本应转到数据库,文件应转到存储,文件路径保存在数据库中 我试着加上 enctype="multipart/form-data" 到我的文本表单和文件上载表单元素。表单操作当前是以下方法(见下文)。我尝试将codeigniter文档中的方法添加到下面的方法中,以允许文件上载,但不幸的是,这不起作用。我做错了什么?我怀疑我需要调用$\u文件 public fu
enctype="multipart/form-data"
到我的文本表单和文件上载表单元素。表单操作当前是以下方法(见下文)。我尝试将codeigniter文档中的方法添加到下面的方法中,以允许文件上载,但不幸的是,这不起作用。我做错了什么?我怀疑我需要调用$\u文件
public function save()
{
$project_id = $this->input->post('project_id');
$id = $this->input->post('task_id');
if($this->input->post('cancel') !== FALSE) {
if($id)
redirect('task/view/'.$project_id.'/'.$id);
else
redirect('project/tasks/'.$project_id);
}
$this->load->library('form_validation');
$this->form_validation->set_rules('title', 'Title', 'trim|required');
etc....
if($this->form_validation->run() === false) {
$this->error = true;
if ($id)
$this->edit ($project_id, $id);
else
if($project_id)
$this->add ($project_id);
else
redirect('dashboard');
return;
}
$this->load->model('task_model');
$sql_data = array(
'project_id' => $project_id,
etc...
);
if ($id)
$this->task_model->update($this->input->post('project_id'), $id, $sql_data);
else
$id = $this->task_model->create($sql_data);
//add in upload function here
$config['upload_path'] = './upload/cell/';
$config['allowed_types'] = 'gif|jpg|png|tif';
$config['max_size'] = '1000';
$config['max_width'] = '2024';
$config['max_height'] = '1768';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload())
{
$error = array('error' => $this->upload->display_errors());
$this->load->view('upload_forms', $error);
}
else
{
$data = array('upload_data' => $this->upload->data());
}
// end of added uploader code
redirect('project/tasks/'.$this->input->post('project_id'));
}
尝试使用字段名
$this->upload->do_upload('upload');
而不是
$this->upload->do_upload();
该字段在HTML中的位置
<input type="file" name="upload"/>
还要确保上传路径有效且可写
查看更多信息谢谢您的帮助,但我没有更改任何默认设置。我使用的是
,我知道文件路径是有效的,因为当我将其与codeigniter示例一起使用时,文件路径是有效的。不确定发生了什么,但我在乱搞代码,破坏了所有内容并恢复到该文件路径,现在它可以工作了???
If you would like to set your own field name simply pass its
value to the do_upload function