Upload image and paste text in codeigniter

im trying to upload image with title and description along with image upload. My image uploads and text inputs work separately, and the text and image path are also inserted into the database, but I still can’t figure out how to combine both

i used the guides provided at http://codeigniter.com/user_guide/libraries/file_uploading.html

function do_upload() { $config['upload_path'] = './uploads/'; $config['allowed_types'] = 'gif|jpg|png'; $config['max_size'] = '100'; $config['max_width'] = '1024'; $config['max_height'] = '768'; $this->load->library('upload', $config); if ( ! $this->upload->do_upload()) { $error = array('error' => $this->upload->display_errors()); $this->load->view('upload_form', $error); } else { $data = array('upload_data' => $this->upload->data()); $this->load->view('upload_success', $data); } } 

can someone tell me how can i insert some text fields along with the image upload form into sql database?

+4
source share
1 answer

Basically, just enter the image input in the same form, for example:

 // view echo form_open_multipart('controller_name/do_upload'); echo form_input("title", ""); echo form_input("description", ""); echo form_upload("userfile"); echo form_close 

And add a POST message to the controller:

 // controller function do_upload() { $config['upload_path'] = './uploads/'; $config['allowed_types'] = 'gif|jpg|png'; $config['max_size'] = '100'; $config['max_width'] = '1024'; $config['max_height'] = '768'; $this->load->library('upload', $config); // validate the POST data // http://codeigniter.com/user_guide/libraries/form_validation.html $this->form_validation->set_rules('title', 'Title', 'trim|required'); $this->form_validation->set_rules('description', 'Description', 'trim|required') if ($this->form_validation->run() == FALSE) { // failed validation $this->load->view('myform'); // quit here return false; } if ( ! $this->upload->do_upload()) { // no file uploaded or failed upload $error = array('error' => $this->upload->display_errors()); $this->load->view('upload_form', $error); } else { // success $data = array('upload_data' => $this->upload->data()); $title = $this->input->post('title'); $description = $this->input->post('description'); // a model that deals with your image data (you have to create this) $this->your_upload_model->add($title, $description, $data["file_name"]); $this->load->view('upload_success', $data); } } 

You will also need to create a suitable model for entering data into the database.

+3
source

Source: https://habr.com/ru/post/1369025/


All Articles