我成功将图像上传到文件夹中,并将其名称上传到数据库,但是相同的代码不会将文件上传到文件夹中,而是在数据库中上传名称。以下是将音频文件上传到我的文件夹音乐的代码。
控制器功能
public function add_audio(){
$config['upload_path'] = './musics/';
$config['allowed_types'] = 'mp3';
$config['max_size'] = '100000000000000';
$this->load->library('upload',$config);
chmod('musics/', 0777);
$this->upload->do_upload('output');
$data['audio'] = $_FILES['output']['name'];
$this->load->model('main');
$query = $this->main->insert('audio',$data);
if($query = TRUE){
$this->load->view('admin/success');
}
else{
redirect($_SERVER['HTTP_REFERER']);
} //end else
} //end function
答案 0 :(得分:0)
在上面的代码中,您已指定
if($query = TRUE){
$this->load->view('admin/success');
}
由于这是比较而不是作为分配,因此应将其更正为
if($query == TRUE){
$this->load->view('admin/success');
}
答案 1 :(得分:0)
通过以下方式检查其他文件格式:
print_r($_FILES);
并且您在if条件中使用=
而不是==
。
试试这个:
if($query = TRUE){
$this->load->view('admin/success');
}
答案 2 :(得分:0)
尝试从'output'
$this->upload->do_upload('output');
并尝试用以下代码替换您的部分代码:
if ( ! $this->upload->do_upload())
{
$data['error'] = $this->upload->display_errors();
//line of codes that displays if there are errors
}
else
{
$data['audio'] = $_FILES['output']['name'];
$this->load->model('main');
$query = $this->main->insert('audio',$data);
if($query == TRUE){
$this->load->view('admin/success');
}
}