У меня есть editform для редактирования информации о моей компании. У меня также есть поле для загрузки логотипа. Когда я нажимаю на файл и нажимаю «Отправить» (форма), он хранит имя файла в моей базе данных как imagename.jpg, например.
Я также хочу добавить изображение в папку assets / uploads /. Я попробовал его с помощью класса загрузки codeigniter, как и в моей другой форме загрузки, но этот не работает. Я просто не знаю, почему.
Вот мой editform:
<?= form_open_multipart('members/update/'.$id);?> //other fields for editing company <tr> <td><?= form_label('Logo:'); ?></td> <td><input type="file" name="logo" size="20" /></td> </tr> <tr> <td><?= form_submit('submit', 'Opslaan');?> <?= form_reset('reset', 'Reset');?></td> </tr> </table> <?= form_close()?>
Мой контроллер:
function update() //de update functie voor bovenstaande functie. { $id = $this->uri->segment(3); $data = array( 'Bedrijfsnaam' => $this->input->post('Bedrijfsnaam'), 'Postcode' => $this->input->post('Postcode'), 'Plaats' => $this->input->post('Plaats'), 'Telefoonnummer' => $this->input->post('Telefoonnummer'), 'Email' => $this->input->post('Email'), 'Website' => $this->input->post('Website'), 'Profiel' => $this->input->post('Profiel'), 'Adres' => $this->input->post('Adres'), ); if($this->input->post('logo')) { $data['logo'] = $this->input->post('logo'); } $config['upload_path'] = './assets/uploads/'; $config['allowed_types'] = 'gif|jpg|png'; $config['max_size'] = '1000'; $config['max_width'] = ''; $config['max_height'] = ''; $config['overwrite'] = TRUE; $config['remove_spaces'] = TRUE; $this->load->library('upload', $config); if ( ! $this->upload->do_upload()) { $error = array('error' => $this->upload->display_errors()); } else { $data = array('upload_data' => $this->upload->data()); } $this->members_model->updatebedrijf($id, $data); $b = $this->session->userdata('idbedrijven'); redirect("members/$b"); } function updatebedrijf($id, $data) { foreach($this->input->post('categorieen') as $cat){ $this->db->where('idbedrijven', $id); $this->db->update('bedrijven', $data); $to_bedrijfcategorieen2['idcategorieen'] = $this->input->post('categorieen'); $this->insert_bedrijfcat1($to_bedrijfcategorieen2); }; }
Моя модель:
function updatebedrijf($id, $data) { foreach($this->input->post('categorieen') as $cat){ $this->db->where('idbedrijven', $id); $this->db->update('bedrijven', $data); $to_bedrijfcategorieen2['idcategorieen'] = $this->input->post('categorieen'); $this->insert_bedrijfcat1($to_bedrijfcategorieen2); }; }
Он просто не загружается. Путь такой же, как и моя другая функция загрузки. это хорошо работает.