如何在codeigniter中使用多个图像
在我的页面中,我希望用户选择多个图像并将其上载。我将图像名称保存在数据库中以供参考。我成功上传数据库中的单个图像,也可以在视图中显示图像,但现在我上传多个图像时遇到问题如何在codeigniter中使用多个图像,codeigniter,Codeigniter,在我的页面中,我希望用户选择多个图像并将其上载。我将图像名称保存在数据库中以供参考。我成功上传数据库中的单个图像,也可以在视图中显示图像,但现在我上传多个图像时遇到问题 public function add_record() { $this->form_validation->set_rules('category', 'category', 'required'); $current_date = date("Y-m-d H:i:s"); $error='
public function add_record()
{
$this->form_validation->set_rules('category', 'category', 'required');
$current_date = date("Y-m-d H:i:s");
$error='';
if($this->form_validation->run())
{
$image = '';
if($_FILES['image']['name'])
{
if (!is_dir('/backend_assets/media/image/')) {
mkdir('./backend_assets/media/image/', 0777, TRUE);
}
$config['upload_path'] = './backend_assets/media/image/';
$config['allowed_types'] = 'gif|jpg|jpeg|png';
$this->load->library('upload', $config);
$this->upload->initialize($config);
if ($this->upload->do_upload('image'))
{
$data = $this->upload->data();
$image = $data['file_name'];
}else{
$this->session->set_flashdata('error', $this->upload->display_errors());
redirect(base_url('admin/image'));
}
}
$insert_array = array(
'gl_cat_id' => $this->input->post('category'),
'gl_image'=> $image
);
if ($this->common_model->add_records('vm_image',$insert_array))
{
$id = $this->db->insert_id();
$insert_sco_details = array(
'sd_ty'=>'vm_image',
'sd_ty_id'=>$id,
'sd_image'=>$image
);
if($this->common_model->publication('vm_image',$id) && $this->common_model->add_records('vm_seo_detail',$insert_sco_details))
{
$this->session->set_flashdata('success','Record added successfully');
redirect(base_url('admin/image'));
}else{
$this->session->set_flashdata('error','Error while adding record');
redirect(base_url('admin/image'));
}
}else{
$this->session->set_flashdata('error','Error while adding record');
redirect(base_url('admin/image'));
}
}
$where_array = array('vm_publications.status !=' => 4);
$data['users_type'] = $this->common_model->get_records('vm_image_category','','','');
$data['include'] = 'backend/image/add_image';
$this->load->view('backend/container', $data);
}
上面的代码怎么可能…?首先,调试
$\u文件
变量的输出。这将为您提供一组正在上载的文件。循环通过它们,分别对待每一个
foreach($\u文件为$file){
//对$file对象而不是$\u FILES对象执行一些文件处理。
//示例:不使用“if($\u FILES['image']['name'])”
//使用:“如果($file['image']['name'])”
}
如果要使用CI的upload类,请在此处查看他们的文档:首先,调试
$\u文件的输出。这将为您提供一组正在上载的文件。循环通过它们,分别对待每一个
foreach($\u文件为$file){
//对$file对象而不是$\u FILES对象执行一些文件处理。
//示例:不使用“if($\u FILES['image']['name'])”
//使用:“如果($file['image']['name'])”
}
如果您想使用CI的upload类,请在此处查看他们的文档:在您的add_record()函数中尝试以下代码。这对你会有帮助的。几天前,我也遇到了同样的问题
$files = $_FILES;
$count = count($_FILES['image']['name']);
for($i=0; $i<$count; $i++) {
$_FILES['image']['name']= $files['image']['name'][$i];
$_FILES['image']['type']= $files['image']['type'][$i];
$_FILES['image']['tmp_name']= $files['image']['tmp_name'][$i];
$_FILES['image']['error']= $files['image']['error'][$i];
$_FILES['image']['size']= $files['image']['size'][$i];
$this->upload->initialize($this->set_upload_options());//function defination below
$this->upload->do_upload('image');
$upload_data = $this->upload->data();
$name_array[] = $upload_data['file_name'];
$fileName = $upload_data['file_name'];
$images[] = $fileName;
}
$fileName = $images;
在add_record()函数中尝试以下代码。这对你会有帮助的。几天前,我也遇到了同样的问题
$files = $_FILES;
$count = count($_FILES['image']['name']);
for($i=0; $i<$count; $i++) {
$_FILES['image']['name']= $files['image']['name'][$i];
$_FILES['image']['type']= $files['image']['type'][$i];
$_FILES['image']['tmp_name']= $files['image']['tmp_name'][$i];
$_FILES['image']['error']= $files['image']['error'][$i];
$_FILES['image']['size']= $files['image']['size'][$i];
$this->upload->initialize($this->set_upload_options());//function defination below
$this->upload->do_upload('image');
$upload_data = $this->upload->data();
$name_array[] = $upload_data['file_name'];
$fileName = $upload_data['file_name'];
$images[] = $fileName;
}
$fileName = $images;
$current_date=日期(“Y-m-d H:i:s”);
$error='';
$image='';
如果(isset($\u文件['image']['name']))
{
//打印(美元文件);
$id=base64_解码($this->input->post('gid');
$filescont=count($_文件['image']['name']);
$inserted='';
对于($i=0;$i<$filescont;$i++)
{
$\u文件['userFile']['name']=$\u文件['image']['name'][$i];
$\u文件['userFile']['type']=$\u文件['image']['type'][$i];
$\u文件['userFile']['tmp\u name']=$\u文件['image']['tmp\u name'][$i];
$\u文件['userFile']['error']=$\u文件['image']['error'][$i];
$\u文件['userFile']['size']=$\u文件['image']['size'][$i];
$config['upload_path']='./后端_资产/媒体/图像/';
$config['allowed_types']='gif | jpg | png';
$this->load->library('upload',$config);
$this->upload->initialize($config);
如果($this->upload->do_upload('userFile'))
{
$fileData=$this->upload->data();
$image=$fileData['file_name'];
$insert_数组=数组(
'gl_cat_id'=>this->input->post('category'),
“gl_image”=>$image
);
if($this->common\u model->add\u records($vm\u image',$insert\u array))
{
$id=$this->db->insert_id();
$insert\u sco\u details=数组(
'sd_ty'=>'vm_image',
'sd_ty_id'=>$id,
“sd_图像”=>$image
);
if($this->common_model->publication($vm_image',$id)&&$this->common_model->add_记录($vm_seo_detail',$insert_sco details))
{
$inserted++;
}
}
}
}
如果($inserted==$filesCount)
{$this->session->set_flashdata('success','imagesuploadsuccessfully');
重定向(基本url('adminp8AamG6ueHFNGAAp/image');
}否则{
$this->session->set_flashdata('error','error when adding record');
重定向(基本url('adminp8AamG6ueHFNGAAp/image');
}
}
$where_array=array('vm_publications.status!='=>4);
$data['users\u type']=$this->common\u model->get\u records('vm\u image\u category','','','');
$data['include']='backend/image/add_image';
$this->load->view('backend/container',$data);
$current_date=日期(“Y-m-d H:i:s”);
$error='';
$image='';
如果(isset($\u文件['image']['name']))
{
//打印(美元文件);
$id=base64_解码($this->input->post('gid');
$filescont=count($_文件['image']['name']);
$inserted='';
对于($i=0;$i<$filescont;$i++)
{
$\u文件['userFile']['name']=$\u文件['image']['name'][$i];
$\u文件['userFile']['type']=$\u文件['image']['type'][$i];
$\u文件['userFile']['tmp\u name']=$\u文件['image']['tmp\u name'][$i];
$\u文件['userFile']['error']=$\u文件['image']['error'][$i];
$\u文件['userFile']['size']=$\u文件['image']['size'][$i];
$config['upload_path']='./后端_资产/媒体/图像/';
$config['allowed_types']='gif | jpg | png';
$this->load->library('upload',$config);
$this->upload->initialize($config);
如果($this->upload->do_upload('userFile'))
{
$fileData=$this->upload->data();
$image=$fileData['file_name'];
$insert_数组=数组(
'gl_cat_id'=>this->input->post('category'),
“gl_image”=>$image
);
if($this->common\u model->add\u records($vm\u image',$insert\u array))
{
$id=$this->db->insert_id();
$insert\u sco\u details=数组(
'sd_ty'=>'vm_image',
'sd_ty_id'=>$id,
“sd_图像”=>$image
);
$current_date = date("Y-m-d H:i:s");
$error = '';
$image = '';
if(isset($_FILES['image']['name']))
{
//print_r($_FILES);
$id = base64_decode($this->input->post('gid'));
$filesCount = count($_FILES['image']['name']);
$inserted = '';
for($i = 0; $i < $filesCount; $i++)
{
$_FILES['userFile']['name'] = $_FILES['image']['name'][$i];
$_FILES['userFile']['type'] = $_FILES['image']['type'][$i];
$_FILES['userFile']['tmp_name'] = $_FILES['image']['tmp_name'][$i];
$_FILES['userFile']['error'] = $_FILES['image']['error'][$i];
$_FILES['userFile']['size'] = $_FILES['image']['size'][$i];
$config['upload_path'] = './backend_assets/media/image/';
$config['allowed_types'] = 'gif|jpg|png';
$this->load->library('upload', $config);
$this->upload->initialize($config);
if($this->upload->do_upload('userFile'))
{
$fileData = $this->upload->data();
$image = $fileData['file_name'];
$insert_array = array(
'gl_cat_id' => $this->input->post('category'),
'gl_image'=> $image
);
if ($this->common_model->add_records('vm_image',$insert_array))
{
$id = $this->db->insert_id();
$insert_sco_details = array(
'sd_ty'=>'vm_image',
'sd_ty_id'=>$id,
'sd_image'=>$image
);
if($this->common_model->publication('vm_image',$id) && $this->common_model->add_records('vm_seo_detail',$insert_sco_details))
{
$inserted++;
}
}
}
}
if($inserted == $filesCount)
{ $this->session->set_flashdata('success','Images uploaded successfully');
redirect(base_url('adminp8AamG6ueHFNGAAp/image'));
}else{
$this->session->set_flashdata('error','Error while adding record');
redirect(base_url('adminp8AamG6ueHFNGAAp/image'));
}
}
$where_array = array('vm_publications.status !=' => 4);
$data['users_type'] = $this->common_model->get_records('vm_image_category','','','');
$data['include'] = 'backend/image/add_image';
$this->load->view('backend/container', $data);