【发布时间】:2015-08-04 10:54:41
【问题描述】:
当我上传 csv 文件时,只上传第一个数据。 这是我的控制器。
public function uploadbusinesstype()
{
$config['upload_path'] = APPPATH.'/assets/upload/';
$config['allowed_types'] = 'csv';
$config['max_size'] = '5000';
$replace = '"';
$this->load->library('upload', $config);
$this->load->database();
if ( ! $this->upload->do_upload('file_name'))
{
$error = array('error' => $this->upload->display_errors());
$this->session->set_flashdata('msg_excel','Choose a .csv file to upload');
redirect(base_url().'admin/businesstype/managecategories');
}
else
{
$data = array('upload_data' => $this->upload->data());
$userfile = $data['upload_data']['file_name'];
$this->load->library('csvreader');
$upload_data = $this->upload->data();
$file = $upload_data['full_path'];
$file_name = $upload_data['userfile'];
$data = $this->csvreader->parse_file($file);
foreach($data as $row)
{
if($row['main_type_name']=='')
{
$this->session->set_flashdata('msg_excel','Please check the Type Name.It is empty');
redirect(base_url().'admin/businesstype/managecategories');
}
else if(!preg_match("/^[a-zA-Z& ]+$/",$row['main_type_name']))
{
$this->session->set_flashdata('msg_excel','Please check the Type Name.Only alphabets are allowed');
redirect(base_url().'admin/businesstype/managecategories');
}
else
{
$results_array = array(
'type_id' => $row['type_id'],
'main_type_name' => $row['main_type_name']
);
$this->load->model('admin/businesstype_model');
$this->businesstype_model->catupload($results_array);
}
$success_message='Successfully Upload!';
$this->session->set_flashdata('success_message',$success_message);
redirect(base_url().'admin/businesstype/managecategories');
}
}
}
这是我的模特
function catupload($results_array)
{
$this->db->insert('cr_main_shop_type', $results_array);
}
这里有主要类型名称。当我在 csv 中将配件、手表和手机作为主要类型名称时。只有第一个值会进入数据库。
【问题讨论】:
标签: php codeigniter mysqli