У меня возникла проблема с загрузкой файлов в CodeIgniter 2.2. Я могу создать его конкретную папку, но я не могу загрузить файл, который я выбрал.Codeigniter 2.2: Загрузка файла
Вот мой контроллер:
function create_report()
{
if($this->session->userdata('logged_in'))
{
$this->create_model->set_report();
$this->session->set_flashdata('message', 'Success! You created a Report!');
#$redirect($_SERVER['HTTP_REFERER'], 'refresh');
}
else
{
$this->session->set_flashdata('message', 'Oops! You have to Login');
//If no session, redirect to login page
redirect('login', 'refresh');
}
}
и вот мой Модель:
function set_report()
{
if($this->session->userdata('logged_in'))
{
$session_data = $this->session->userdata('logged_in');
if($_FILES['userfile']['name'] != NULL)
{
$main_dir = './FILES/'.$this->input->post('patientname').'/';
// Check if User Folder is already created. Create New if none exist
if(!is_dir($main_dir)){
mkdir($main_dir, 0777);
}
$target_dir = './FILES/'.$this->input->post('patientname').'/'.$this->input->post('session_id').'/';
// Check if Session Folder is already created. Create New if none exist
if(!is_dir($target_dir)) {
mkdir($target_dir, 0777);
}
$config['upload_path'] = './FILES/'.$this->input->post('patientname').'/'.$this->input->post('session_id').'/';
$config['allowed_types'] = 'gif|jpg|png|docx|xlsx|doc|pdf|csv|zip|rar|7zip|ppt|pptx';
$this->load->library('upload', $config);
$data2 = array('upload_data' => $this->upload->data());
}
$data = array(
'session_id' => $this->input->post('session_id'),
'report_creator' => $session_data['username'],
'report_patientname' => $this->input->post('patientname'),
'report_patientid' => $this->input->post('patientid'),
'report_subject' => $this->input->post('subject'),
'report_description' => $this->input->post('description'),
'report_time' => $this->input->post('date'),
'report_date' => $this->input->post('time')
);
return $this->db->insert('session_reports', $data);
}
}
Я пытался решить эту проблему, и я не выяснить ключ. Надеюсь, кто-нибудь сможет мне помочь.
Так? Какая у вас ошибка? Вы пытались отобразить '$ this-> upload-> display_errors()', чтобы узнать, что случилось? –
Кстати, вы забыли '$ this-> upload-> do_upload ($ field_name)', чтобы загрузить файл. Прочитайте документацию: https://ellislab.com/codeigniter/user-guide/libraries/file_uploading.html –
вы уверены, что 'mkdir ($ main_dir, 0777)' работает? –