Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

कोडनिर्देशक में MySQL डेटाबेस ब्लॉब पर छवि अपलोड

$this->input->post('photo') मॉडल में छवि जानकारी पुनर्प्राप्त करने के लिए काम नहीं करेगा। क्योंकि छवियों को $_FILES में संग्रहीत किया जाता है न कि $_POST में। तो आपको अपलोड लाइब्रेरी का उपयोग करने की आवश्यकता है नीचे दिए गए कोडनिर्देशक में।

public function update_profile() {
       $id = $this->session->userdata('id');
       $this->load->model('edit_profile_model');

       $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);
       $this->upload->do_upload();//upload the file to the above mentioned path
       $this->edit_profile_model->update_db_user_info($id, $this->upload->data());// pass the uploaded information to the model
   } 
public function update_db_user_info($id, $imgdata) {
       $imgdata = file_get_contents($imgdata['full_path']);//get the content of the image using its path
       $data = array(
           'fullname' => $this->input->post('fullname'),
           'address' => $this->input->post('address'),
           'state' => $this->input->post('state'),
           'city' => $this->input->post('city'),
           'pincode' => $this->input->post('pincode'),
           'image' => $imgdata,
       );
       $this->db->where('id', $id);
       $this->db->update('userdetails', $data);
   } 

छवि को पुनः प्राप्त करने के लिए नीचे दिए गए मॉडल में एक फ़ंक्शन लिखें।

public function get_image($id){
       $this->db->where('id', $id);
       $result = $this->db->get('userdetails');
       header("Content-type: image/jpeg");
       echo $result['image'];
}

और यह भी छवि को स्टोर करने और डेटाबेस से पुनर्प्राप्त करने के लिए एक अच्छा अभ्यास नहीं है। इसके बजाय छवि को एक फ़ोल्डर में संग्रहीत करने का प्रयास करें और नीचे की तरह डेटाबेस में पथ को संग्रहीत करें।

public function update_db_user_info($id, $imgdata) {
       $imgdata = $imgdata['full_path'];// get the path of the image
       $data = array(
           'fullname' => $this->input->post('fullname'),
           'address' => $this->input->post('address'),
           'state' => $this->input->post('state'),
           'city' => $this->input->post('city'),
           'pincode' => $this->input->post('pincode'),
           'image' => $imgdata,// change the type of image from blob to varchar or text
       );
       $this->db->where('id', $id);
       $this->db->update('userdetails', $data);
   } 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. .Net ORM जो MySQL के साथ अच्छा काम करता है

  2. मुझे अपने विंडोज़ कंप्यूटर पर my.cnf नहीं मिल रहा है

  3. XAMPP - त्रुटि:MySQL अप्रत्याशित रूप से बंद हो गया

  4. MySQL में खुले लेनदेन प्रदर्शित करें

  5. मुझे अपने आप को एक पृष्ठ पर कितने MySQL प्रश्नों तक सीमित रखना चाहिए? पीएचपी / माईएसक्यूएल