Friday, May 29, 2015

Codeigniter: Upload/Save Image to Database



tb_image.sql
CREATE TABLE IF NOT EXISTS `tb_image` (
     `ID_image` int(11) NOT NULL AUTO_INCREMENT,
     `file_name` varchar(50) NOT NULL,
     `file_type` varchar(50) NOT NULL,
     `file_path` varchar(50) NOT NULL,
     `full_path` varchar(100) NOT NULL,
     `raw_name` varchar(50) NOT NULL,
     `orig_name` varchar(50) NOT NULL,
     `client_name` varchar(50) NOT NULL,
     `file_ext` varchar(50) NOT NULL,
     `file_size` varchar(10) NOT NULL,
     `image_width` varchar(10) NOT NULL,
     `image_height` varchar(10) NOT NULL,
     `image_type` varchar(10) NOT NULL,
     `image_size_str` varchar(50) NOT NULL,
     PRIMARY KEY (`ID_image`)
);

./application/config/autoload.php
$autoload['libraries'] = array('database', 'form_validation');
$autoload['helper'] = array('url', 'html');

./application/controllers/upload.php
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Upload extends CI_Controller {

     public function __construct() {
          parent::__construct();
     }

     public function index() {
          $config = array(
               'upload_path' => 'upload/',
               'allowed_types' => 'gif|jpg|png|', // |extensi lainnya
               'max_size' => '0'
          );

          if ($this->upload->do_upload('file_name')) {
               $data = $this->upload->data();

               $insert_to_database = array(
                    'file_name' => $data['file_name'],
                    'file_type' => $data['file_type'],
                    'file_path' => $data['file_path'],
                    'full_path' => $data['full_path'],
                    'raw_name' => $data['raw_name'],
                    'orig_name' => $data['orig_name'],
                    'client_name' => $data['client_name'],
                    'file_ext' => $data['file_ext'],
                    'file_size' => $data['file_size'],
                    'image_width' => $data['image_width'],
                    'image_height' => $data['image_height'],
                    'image_type' => $data['image_type'],
                    'image_size_str' => $data['image_size_str']
               );
               $this->db->insert('tb_image', $insert_to_database);
               redirect('upload');
          }

          $data['result'] = $this->db->get('tb_image')->result();

          $this->load->view('upload_to_database', $data);
     }

}

/* End of file upload.php */
/* Location: ./application/controllers/upload.php */

./application/views/upload_to_database.php
// form untuk penginputan gambar
<?=form_open_multipart();?>
<?=form_upload('file_name');?>
<?=form_submit('upload', 'Upload');?>
<?=form_close();?>
// tampilan hasil inputan gambar
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
     <tr>
          <td></td>
          <th align="left">File Name</th>
          <th align="left">File Type</th>
          <th align="left">Full Path</th>
          <th align="left">File Size</th>
     </tr>

     <?php
     foreach ($result as $data) {
          echo '<tr>';
          echo '<td>'.img(array('src' => 'upload/'.$data->file_name, 'width' => '80', 'height' => '50')).'</td>';
          echo '<td>'.$data->file_name.'</td>';
          echo '<td>'.$data->file_type.'</td>';
          echo '<td>'.$data->full_path.'</td>';
          echo '<td>'.$data->file_size.'</td>';
          echo '</tr>';
     }
     ?>
</table>

Categories: ,

2 comments:

luvne.com resepkuekeringku.com desainrumahnya.com yayasanbabysitterku.com

Copyright © Click | Powered by Blogger