CONTROLLER
$config['upload_path'] = '../ci/assets/images/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '1000';
$config['max_width'] = '1024';
$config['max_height'] = '768';
//load upload library
$this->load->library('upload', $config);
//load mPhoto model
$this->load->model("carstock_model");
//Check to see if upload was activated if/then/else statement
if (! $this->upload->do_upload())
{
$error = array('error' => $this->upload->display_errors());
$this->load->view('admin_view.php', $error);
}
else
{
for($i=1; $i<6; $i++) {
$data = array('upload_data' => $this->upload->data());
$data2 = $this->input->post(NULL, TRUE); //returns POST items with XSS filter
$filename = $data['upload_data']['file_name']; //obtain the upload filename
$data2['picture' .$i]= $filename .$i; //get and set the filename
// $data2['PhotoFilenameLarge']=$filename; //get and set the filename
$this->carstock_model->insertData($data2); //add the db
}
$this->load->view('upload_success', $data); //display the success view
}
查看
...
<input name="userfile" type="file" multiple="multiple" />
...
MODEL
public function insertData($data){
$this->db->insert("carstock", $data); //active record
}
问题是当在mysql中传递文件时只将最后选择的图像作为输入并将名称存储错误。 谢谢你的帮助。
答案 0 :(得分:1)
for($i = 0;$i<=2;$i++){
$name = 'image_0'.$i;
if(isset($_FILES[$name])){
$this->upload->do_upload($name);
$data = $this->upload->data();
dump($data['file_name']);
}else{
// do nothing
} // end of for loop
转储($数据[ 'FILE_NAME']);将转储文件名。但是您必须为每个字段选择文件