Wednesday, December 31, 2014

Jepretcode: December 2014

Codeigniter Cara Membuat Halaman Admin dan Utama (Frontend)

Cara membuat halaman admin dan halaman frontend website dengan menggunakan codeigniter dilakukan untuk memudahkan mengatur mana halaman untuk admin yang bisa mengubah menambah atau mengedit bahkan menghapus bagian dari web berbasis codeigniter dan mana halaman untuk pengunjung atau user lain sebagai pembaca informasi. berikut cara membuat admin dan frontend dengan codeigniter:

  1. download codeigniter saya mencoba menggunakan codeigniter versi 2.20 dan extract di folder localhost anda contoh http://localhost://admin_dan_fronted/.
  2. buat folder admin didalam folder yang sudah diextract. lihat gambar 
    Codeigniter Cara Membuat Halaman Admin dan Halaman Frontend atau Utama
  3. copy folder application ke dalam folder admin
  4. copy index.php yang ada difolder utama kedalam folder admin
  5. coba jalankan http://localhost://admin_dan_fronted/
  6. coba jalankan http://localhost://admin_dan_fronted/admin
  7. setelah dicoba jalankan 2 langkah diatas maka untuk halaman utama(frontend) lancar namun untuk halam kedua muncul pesan "Your system folder path does not appear to be set coreccly. Please open the following file and correct this: index.php
  8. pesan diatas menjelaskan bahwa halaman admin tidak bisa memanggil folder system dengan benar cek karena didalam folder admin tidak terdapat folder system, sementara folder system ada didalam folder utama bukan didalam folder admin, bagaimana cara memanggil folder system yang ada didalam folder utama jika muncul pesan diatas maka lakukan dengan cara membuka file index.php yang ada didalam folder admin lalu rubah seperti dibawah ini. 
    $system_path = 'system';
     
     Menjadi
     
    $system_path = '../system';
    
  9. coba lakukan refresh http://localhost://admin_dan_fronted/admin
  10. maka dengan cara diatas maka halam admin siap untuk digunakan
  11. untuk selanjutnya kita ujicoba dengan merubah tampilan halaman admin, sebagai contoh adalah halaman login untuk admin,  maka buka welcome_message.php yang ada didalam folder admin/application/views dengan contoh kode login admin dibawah ini: 
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <style>
    body {
    padding-top: 15px;
    padding-left: 0px;
    padding-right: 0px;
    margin: 0;
    font-family: "Helvetica";
    font-size: 14px;
    line-height: 28px;
    color: #000000;
    background-color: #ffffff;
    }
      
    .box {
    width: 30%;
    min-width: 300px;
    max-width: 300px;
    margin-left:auto; 
    margin-right:auto; 
    padding-top: 15px;
    margin-bottom: 5px;
    }
     
    .box > .heading {
    height: 48px;
    padding-left: 5px;
    padding-right: 5px;
    border: 1px solid #DBDBDB;
    -webkit-border-radius: 7px 7px 0px 0px;
    -moz-border-radius: 7px 7px 0px 0px;
    -khtml-border-radius: 7px 7px 0px 0px;
    border-radius: 7px 7px 0px 0px;
    }
    
    .box > .heading h1 {
     margin: auto;
     padding: 11px;
     color: #003A88;
     font-size: 20px;
     float: center;
    }
    
    .box > .content {
     padding: 15px;
     border-left: 1px solid #CCCCCC;
     border-right: 1px solid #CCCCCC;
     border-bottom: 1px solid #CCCCCC;
     overflow: auto;
    }
    
    .span2 { 
    text-align: center;
    font-size: 18px;
    } 
      
    </style>
    </head>
    <body>   
    
    <?php
    $remember = array(
     'name' => 'remember',
     'id' => 'remember',
     'value' => 1,
     'checked' => set_value('remember'),
    );
    ?>
    
    <div id="content"> 
      <div align='center' class="box">   
     <div class="heading">
      <h1>Login Admin</h1>
     </div>
      <div class="content">
       <form class="form-horizontal well" method="POST" action="<?php echo base_url(); ?>#">
       <div>
        <label>Username :</label>        
        <input placeholder="Ketik username.." name="username" type="text" class="input" id="input01"  value="<?php echo set_value('username'); ?>">
       </div>
       <div>       
        <label>Password :</label>        
        <input placeholder="Ketik password.." name="password" type="text" class="input" id="input01" value="<?php echo set_value('password'); ?>">         
       </div>
       <div>
        <?php echo form_checkbox($remember); ?> Remember Me
       </div>
       <div class="control-group">
        <div class="controls">
        <button type="submit" id="submit" class="btn btn-primary button" >Masuk</button>
        <a href="<?php echo base_url(); ?>#"> 
         <button href="#" type="button" class="btn btn-secondary button" >Lupa Password</button>
        </a>
       </div>
      </div>
     </form>
       </div>
    </div>
    </div>
    
    <div class="span2">
     <footer>   
      <p>&copy; jepretcode 2014.</p>
     </footer>
    </div>
    </body>
    </html>
    
  12. coba direfresh http://localhost://admin_dan_fronted/admin maka jika keluar kesalahan Fatal Error: call to undefined function set_value() maka kesalahan ini dikarenakan didalam welcome_message.php kita diatas ada form yang meminta menjalankan kode funtion set_value() sementara function set_value() berada didalam file Form_validation.php yang ada dialam folder system\libraries\ maka untuk menjalankan secara otomatis function yang ada didalam Form_validation.php buka file autoload.php yang ada didalam folder application\config\ dan tambahkan kode pemanggilan file form_validation seperti contoh dibawah ini: 
    $autoload['libraries'] = array();
    
    Menjadi
    
    $autoload['libraries'] = array('form_validation');
    
  13. Silahkan direfresh lagi localhost dan lihat apakah sudah berhasil.?
  14. Jika belum dan tampilannya belum sempurna, buka lagi file autoload.php tadi dan ganti kode seperti dibawah ini. 
    $autoload['helper'] = array('');
    
    Menjadi
    
    $autoload['helper'] = array('url');
    
Jika sudah berhasil maka inilah cara untuk membuat halaman admin dengan codeigniter, semoga bermanfaat.
Lihat video tutorial cara membuat halaman admin dan frontend di codeigniter

Thursday, December 25, 2014

Jepretcode: December 2014

Codeigniter Cara Menghilangkan index php

Codeigniter Cara Menghilangkan index php
Didalam menjalankan default atau standar program codeigniter maka kita mendapatkan default index_page adalah index.php. maka dalam setiap menjalankan program maka selalu keluar htttp://websiteanda/index.php/controller/ atau dilocalhost http://localhost/folder/index.php/conroller/ lalu ditambah lagi kita tidak bisa menempatkan base_url yang pas untuk setiap menjalankan program ini, sehingga sering mendapati Not Found - 404 The request URL was not found on this server. Ini terjadi karena base_url tidak kita tempatkan dengan benar, namun salah satu solusi yang perlu dilakukan adalah dengan menghilangkan index.php agar tidak terjadi kesalahan Not Found - 404. Berikut cara menghilangkan:

  • Buka file confiq.php yang ada didalam folder application/config/
  • Lalu hilangkan index.php yang ada pada $config['index_page'] contoh dibawah ini:
$config['index_page'] = 'index.php';

Menjadi

$config['index_page'] = '';

  • Lalu buatlah file dengan nama .htaccess difolder utama codeigniter Anda
  • Lalu isi kode sesuai berikut
<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php/?$1 [L]
</IfModule>

Maka dengan melakukan cara diatas membuat  index.php tidak lagi ada, sehingga kesalahan yang terjadi seperti Not Found 404 bisa teratasi.

Jepretcode: December 2014

Codeigniter Mengenal Kesalahan dan Cara Mengatasi Kesalahan

Didalam menjalankan program berbasis codeigniter tentunya ada kesalahan dan error yang sering kita jumpai, karena jika menjumpai kesalahan atau error warning maka program akan tidak jalan sesuai yang kita inginkan, berikut beberapa kesalahan yang tampil ketika membuat program menggunakan codeigniter dan bagaimana cara mengatasinya:
  • Kesalahan Fatal error: Call to undefined function redirect()
Apa itu kesalahan function redirect()?. kalau terjadi kesalahan seperti ini biasanya didalam file controller yang kita punya memiliki kode redirect() untuk melakukan perintah yang kita inginkan, coba dilihat didalam file controller yang kita punya, jika ada bukan kesalahan pada kode yang ada di controller kita, karena kita inginkan perintah redirect ini untuk dijalankan, namun kesalahan ini terjadi karena tidak bisa memanggil file url_helper.php yang ada didalam file system\helpers\ (silahkan dilihat difolder system\helpers\), yang mana isi dari url_helper.php memiliki kode atau function redirect yang berguna untuk menjalankan perintah redirect lihat kodenya dibawah ini

if ( ! function_exists('redirect'))
{
 function redirect($uri = '', $method = 'location', $http_response_code = 302)
 {
  if ( ! preg_match('#^https?://#i', $uri))
  {
   $uri = site_url($uri);
  }

  switch($method)
  {
   case 'refresh' : header("Refresh:0;url=".$uri);
    break;
   default   : header("Location: ".$uri, TRUE, $http_response_code);
    break;
  }
  exit;
 }
}

Lalu bagaimana supaya function redirect yang ada didalam file url_helper.php bisa dijalankan?. Untuk bisa menjalankan fungsi atau function redirect ini melalui file autoload.php yang ada didalam folder application\config\ (silahkan dilihat) karena file autoload.php ini memerintahkan secara otomatis function-function yang ada didalam file url_helper.php. jadi untuk kasus seperti ini bagaimana cara mengatasi kesalahan Fatal error: Call to undefined function redirect()? ini, berikut caranya:
  1. Buka file autoload yang ada didalam folder application\config\
  2. Tambahkan fungsi 'url' kedalam array helper,  lihat seperti kode dibawah ini
$autoload['helper'] = array();

Menjadi

$autoload['helper'] = array('url');

Maka dengan menambahkan kode url seperti di atas maka akan menjalankan perintah function redirect yang ada di url_helper.php

Kesalahan Berikutnya:
  • Kesalahan : Message: Undefined property: C_Pagination::$db
Jenis kesalahan dengan mendapatkan pesan seperti ini adalah jika didalam controller kita adanya perintah kode pagination seperti contoh dibawah ini:

$this->pagination->initialize($config);

Kode ini bahwa controller.php memerintahkan untuk menjalankan atau meload database.php dengan perintah "function initialize" yang ada didalam file Pagination.php yang ada didalam folder system\libraries\ (lihat kodenya).

function initialize($params = array())
 {
  if (count($params) > 0)
  {
   foreach ($params as $key => $val)
   {
    if (isset($this->$key))
    {
     $this->$key = $val;
    }
   }
  }
 }

Lalu bagaimana cara mengatasi kesalahan dengan pesan Message: Undefined property:C_Pagination::$db ini, yaitu dengan cara membuka file autoload.php yang ada didalam folder application\config\. maka tambahkan kode 'database' dan 'pagination' kedalam array. lihat seperti dibawah ini:
$autoload['libraries'] = array();

Menjadi

$autoload['libraries'] = array('database','pagination');

Maka dengan menambahkan autoload database.php yang ada didalam folder application\config\ dan pagination.php yang ada didalam foler system\libraries\ maka kedua file ini secara otomatis dibuka untuk melakukan perintah yang kita inginkan untuk menjalankan function-function yang ada didalam file pagination.php dan database.php


Kesalahan Berikutnya:

  • Kesalahan A Database Error Occured No database selected
No database selected

Kesalahan ini adalah kesalahan yang terjadi tidak connect atau terhubungnya database yang dengan program codeigniter sehingga tidak bisa memanggil perintah yang dilakukan oleh program codeigniter. lalu bagaimana cara mengatasi jika terjadi kesalahan seperti ini, berikut caranya:
  1. Buka file database.php yang ada didalam folde application\config\
  2. Lalu isi username dan password serta nama database sesuai dengan username password dan nama database yang ada dilocalhost anda lihat contoh
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = '';
$db['default']['password'] = '';
$db['default']['database'] = '';

Menjadi

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'mysql';
$db['default']['database'] = 'db_pagination';

Maka dengan menambahkan username, password localhost serta menambahkan nama database yang ingin kita gunakan, maka program codeigniter dapat terhubung atau dapat connect sehingga perintah yang ada di dalam folder application\model\ yang meminta tabel database bisa dijalankan.


Kesalahan Berikutnya:

  • Kesalahan Fatal Error: call to a member function set_userdata() on a non object dengan Message: Undefined property: C_ontroller::$session
Kesalahan ini adalah ketika controller anda memiliki kode seperti ini

$this->session->set_userdata('row', $this->uri->segment(3));

Yang mana perintah kode ini untuk menjalankan "function set_userdata" yang ada didalam file session.php yang mana file ini berada didalam folder system\libraries\ lihat kodenyanya dibawah ini:

function set_userdata($newdata = array(), $newval = '')
 {
  if (is_string($newdata))
  {
   $newdata = array($newdata => $newval);
  }

  if (count($newdata) > 0)
  {
   foreach ($newdata as $key => $val)
   {
    $this->userdata[$key] = $val;
   }
  }

  $this->sess_write();
 }

Maka kalau kita amati "function set_userdata" ini diperintahkan untuk dijalankan didalam controller yang kita isi dengan kode this-session=set_userdata, sehingga meminta me-load file session.php yang ada didalam folder system\libraries\ oleh karena itu untuk mengatasi masalah ini adalah dengan merintahkan load secara otomatis files session.php dengan menambahkan kode 'session' yang ada didalam file autoload.php yang ada didalam folder application\config\ lihat kodenya dibawah ini:

$autoload['libraries'] = array('database','pagination');

Menjadi

$autoload['libraries'] = array('database','pagination','session');

Maka dengan menambahkan kode 'session' didalam array ini maka otomatis menjalankan file session.php, sehingga semua function yang ada didalam file session bisa dijalankan ketika kita inginkan.


Kesalahan Berikutnya:

  • Kesalahan : An Error Was Encountered In order to use the Session class you are required to set an encryption key in your confiq file
Kesalahan ini karena salah satu atau beberapa function yang kita gunakan didalam file session.php meminta kunci atau key seperti lihat kode dibawah ini:

function set_userdata($newdata = array(), $newval = '')
 {
  if (is_string($newdata))
  {
   $newdata = array($newdata => $newval);
  }

  if (count($newdata) > 0)
  {
   foreach ($newdata as $key => $val)
   {
    $this->userdata[$key] = $val;
   }
  }

  $this->sess_write();
 }

Coba lihat kode diatas yang mana "function set_userdata" dalam menjalankan fungsinya meminta key dalam menjalankan perintahnya. lalu bagaimana cara mengatasi kesalahan seperti ini?.
Untuk kesalahan seperti ini dapat dilakukan dengan menambahkan key di dalam file config.php yang ada didalam folder application\config\ lihat seperti dibawah ini.

$config['encryption_key'] = '';

Menjadi

$config['encryption_key'] = '1234567890';

Untuk mengisi key ini Anda dapat search di goole untuk mengetahui berapa banyak karakter untuk mengisi encryption_key yang ada didalam file config.php ini.

Jepretcode: December 2014

Codeigniter Cara Membuat Pagination

Didalam tampilan tabel kadang data memiliki banyak misalnya sekitar 100 data maka jika ditampilkan maka akan membuat tabel panjang kebawah, alangkah bagusnya dibuat jika dibagi halamannya, jadi data yang 100 jika dibagi 10 maka tabel membuat page atau halaman sampai sepuluh, sekalian setting ada prev atau mundur dan next atau maju bisa di lihat seperti gambar dibawah ini.
Lalu bagaimana cara membuat page atau halaman di codeigniter tersebut?. Pada postingan sebelumnya sudah diberikan contoh hasilnya yang dapat dilihat pada postingan cara membuat kode dengan mengambil max_id secara otomatis ditambah 1, namun agar lebih jelas berikut caranya:
  • Download codeigniter disini saya menggunakan versi 2.2.0 dan extract di localhost dengan nama pagination
  • Hilangkan index.php dengan cara disini
  • Buat database dengan nama db_pagination dan buat nama tabel seperti dibawah ini
CREATE TABLE IF NOT EXISTS `mahasiswa` (
  `id` int(11) NOT NULL,
  `kode_mahasiswa` varchar(15) NOT NULL,
  `nama_mahasiswa` varchar(250) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  • Lalu Isi tabel dengan data sebagai berikut
INSERT INTO `mahasiswa` (`id`, `kode_mahasiswa`, `nama_mahasiswa`) VALUES
(1, 'MHS-2014-0001', 'jepretcode'),
(2, 'MHS-2014-0002', 'jepretcode 2'),
(3, 'MHS-2014-0003', 'jepretcode 3'),
(4, 'MHS-2014-0004', 'jepretcode 4'),
(5, 'MHS-2014-0005', 'jepretcode 5'),
(6, 'MHS-2014-0006', 'jepretcode 6'),
(7, 'MHS-2014-0007', 'jepretcode 7'),
(8, 'MHS-2014-0008', 'jepretcode 8'),
(9, 'MHS-2014-0009', 'jepretcode 9'),
(10, 'MHS-2014-0010', 'jepretcode 10'),
(11, 'MHS-2014-0011', 'jepretcode 11'),
(12, 'MHS-2014-0012', 'jepretcode 12'),
(13, 'MHS-2014-0013', 'jepretcode 13'),
(14, 'MHS-2014-0014', 'jepretcode 14'),
(15, 'MHS-2014-0015', 'jepretcode 15');
  • Rubah default controller "welcome" menjadi "c_pagination" yang ada dalam file routes.php dan folder application\config\
$route['default_controller'] = "welcome";

Menjadi

$route['default_controller'] = "c_pagination";
  • Berikutnya adalah membuat controller untuk pagination untuk sebagai contoh buatlah dengan nama c_pagination.php dan kodenya sebagai berikut lalu letakkan didalam folder appication\controller\:
<?php

class C_pagination extends CI_Controller{
 
 public function __construct(){
  parent::__construct();
  
  $this->load->model('m_pagination');
 }
 
 public function index(){
  redirect('c_pagination/lihat_pagination');
 } 
 
 //MODUL MAHASISWA
  
 public function lihat_pagination(){
  if($this->uri->segment(3)==""){
   $offset=0;
  }else{
   $offset=$this->uri->segment(3);
  }
  $limit = 7; 
  $data['mahasiswa'] = $this->m_pagination->getAllMahasiswa($offset, $limit);
  $data['count'] = $this->m_pagination->getAllMahasiswa_count(); 
  $config = array();
  $config['base_url'] = base_url(). 'c_pagination/lihat_pagination/';
  $config['per_page'] = $limit;
  $config['uri_segment'] = 3;
  $config['num_links'] = 5;  
  $config['first_tag_open'] = '<li>';
  $config['first_link'] = 'First';
  $config['first_tag_close'] = '</li>';
  $config['prev_link'] = 'Prev';
  $config['prev_tag_open'] = '<li>';
  $config['prev_tag_close'] = '</li>';
  $config['cur_tag_open'] = '<li class="active"><a href>';
  $config['cur_tag_close'] = '</a></li>';
  $config['next_link'] = 'Next';
  $config['next_tag_open'] = '<li>';
  $config['next_tag_close'] = '</li>';
  $config['num_tag_open'] = '<li>';
  $config['num_tag_close'] = '</li>';
  $config['last_tag_open'] = '<li>';
  $config['last_link'] = 'Last';
  $config['last_tag_close'] = '</li>';
  $config['total_rows'] = $data['count'];
  $this->pagination->initialize($config);
  $this->session->set_userdata('row', $this->uri->segment(3));
  $data['error'] = "";    
  $this->load->model('m_pagination');  
  $this->load->view('pagination', $data);
 }   
}
  • Kemudian buatlah model untuk pagination dengan nama m_pagination.php dengan kode seperti dibawah ini dan letakkan di dalam folder application\model\
<?php 

class M_pagination extends CI_Model{
 
 public function __construct(){
  parent::__construct();
 }  
 public function getAllMahasiswa($offset, $limit){
  $query = $this->db->query("SELECT * FROM mahasiswa ORDER BY kode_mahasiswa DESC LIMIT $offset, $limit");
  return $query;
 }
 
 public function getAllMahasiswa_count(){
  $query = $this->db->query("
   SELECT * FROM mahasiswa
  ");
  return $query->num_rows();
 }
}
  • Buatlah tampilannya dengan nama pagination.php dan letakkan di dalam folder application\views\ dengan kode dibawah ini
<!DOCTYPE html>
<html lang="en">
<head>
    <style>
    body {
  padding-top: 10px;
  padding-left: 10px;
  padding-right: 20px;
  margin: 0;
  font-family: "Helvetica";
  font-size: 14px;
  line-height: 18px;
  color: #000000;
  background-color: #ffffff;
 }
 
 .container,
 .navbar-fixed-top .container,
 .navbar-fixed-bottom .container {
 width: 80%;
 }

 .table {
  width: 80%;
  margin-bottom: 18px;
 }

 .table th,
 .table td {
  padding: 8px;
  line-height: 18px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #dddddd;
 }

 .table th {
  font-weight: bold;
 }

 .table thead th {
  vertical-align: bottom;
 }
 
 .table-bordered {
  border: 1px solid #dddddd;
  border-collapse: separate;
  *border-collapse: collapsed;
  border-top: 0;
  border-left: 0;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
        border-radius: 4px;
 }

 .table-bordered th,
 .table-bordered td {
 border-left: 1px solid #dddddd;
 }

 .table-striped tbody tr:nth-child(odd) td,
 .table-striped tbody tr:nth-child(odd) th {
 background-color: #f9f9f9;
 }

 .table tbody tr:hover td,
 .table tbody tr:hover th {
 background-color: #f5f5f5;
 }
 
 #Halaman
  .pagination {
  height: 36px;
  margin: 18px 0;
  }
 
  .pagination ul {
  display: inline-block;
  }

  .pagination li {
  display: inline;
  }

  .pagination a {
  padding: 10px 14px;
  }

  .pagination a:hover,
  .pagination .active a {
  background-color: #f0f0f0;
  }
  
    </style>
</head>
<body>
<center>
 <div class="container"> 
  <h1>Lihat Mahasiswa</h1>
 

  <table class="table table-striped table-bordered">
   <thead>
    <th>No</th>
    <th>Kode Mahasiswa</th>
    <th>Nama Mahasiswa</th>
   </thead>
   <tr>
    <?php $no=1; 
     foreach($mahasiswa->result() as $row){ 
    ?>
    <td><?php echo $this->session->userdata('row')+$no; ?></td>
    <td><?php echo ucwords($row->kode_mahasiswa); ?></td>
    <td><?php echo ucwords($row->nama_mahasiswa); ?></td>
   </tr>
    <?php 
     $no++;
     } 
    ?>
  </table>  
</div>
  <div class="pagination">
   <ul>
    <?php echo $this->pagination->create_links(); ?>
   </ul>
  </div>
  <hr />
  <div>
   <div class="span2">
   <footer>
   <p>&copy; jepretcode 2014.</p>
   </footer>
   </div>
  </div>

</center>
  </body>
</html>
  • Baiklah coba dijalankan dilocalhost untuk dicoba. apakah yang terjadi?. jika dicoba maka akan tampil kesalahan Fatal error: Call to undefined function redirect, bagaimana cara mengatasinya?. silahkan lihat cara mengatasi kesalahan Fatal error: Call to undefined function redirect()
  • Setelah melakukan perbaikan sesuai perintah diatas maka coba lagi diulang refresh localhost lihat apa yang terjadi?. masih mendapatkan Fatal Error: dengan Message: Undefined property: C_Pagination::$db sehingga tidak bisa dijalankan, jika ketemu kesalahan seperti ini maka untuk lihat cara mengatasi kesalahan Fatal Error: Undefined property: C_pagination::$db
  • Setelah melakukan perbaikan lakukan refresh localhost lagi. lalu kesalahan apa lagi yang dijumpai?. Yaitu kesalahan A Database Error Occurred "No database selected'. Berikut cara mengatasi kesalahan No database selected
  • Lakulan lagi refresh localhost Anda setelah mengatasi masalah diatas. lalu lihat kesalahan apa lagi yang akan dijumpai?. yaitu. Fatal error: Call to a member function set_userdata() on a non object dengan pesan Message: Undefined property:C_pagination::$session. lakukan cara mengatasi kesalahan Undefined property: C_pagination::$session
  • Lakukan refresh ulang lagi dan tentunya menemukan kesalahan An Error Was Encountered In order to use the Session class you are required to set an encryption key. lihat cara mengatasinya disini
  • Lakukan lagi refresh ulang dan lihat hasilnya.
Itulah salah satu cara membuat pagination di codeigniter. lihat video tutorial cara membuat pagination dengan codeigniter.

Wednesday, December 24, 2014

Jepretcode: December 2014

Codeigniter Max Id Atau Kode Otomatis

Max id otomatis untuk data kode seperti kode mahasiswa atau dosen, produk, buku dan lainnya. Lalu bagaimana cara membuat kode otomatis menggunakan codeigniter.
Didalam database seperti data mahasiswa atau data produk jika ingin membuat kode otomatis dan diambil dari kode yang tertinggi saat penyimpanan terakhir lalu ditambah beberapa kode lain seperti Untuk kode mahasiswa : MHS/2014/0001 ataupun seperti kode data dosen seperti DSN/2014/001 jadi ketika input data baru maka otomatis akan mendapatkan kode baru sebagai kode untuk data mahasiswa atau dosen.
Untuk keterangan kode didapat dari singkatan mahasiswa adalah MHS 2014 untuk tahun dan 0001 adalah nomor mahasiswa begitu juga untuk dosen.
Berikut langkah langkah untuk membuat Max Id / Kode menggunakan Codeigniter dan sekaligus untuk panduan membuat seperti :

  • controller untuk max id atau kode, 
  • controller input / tambah
  • controller edit / koreksi
  • controller delete / hapus
  • controller pagination / halaman (jika data lebih dari 10 maka otomatis membuat halaman berikutnya
Lakukan langkah berikut dan penjelasan error yang muncul dan cara mengatasi semua error yang muncul tersebut ketika melakukan langkah-langkah tersebut  :

Langkah Pertama

Download codeigniter saya menggunakan codeigniter 2.2.0 dan extract di localhost agar bisa diakses dengan nama sesuai yang diinginkan contoh buat folder "mahasiswa"

Langkah Kedua

Buat database dengan nama db_mahasiswa
CREATE TABLE IF NOT EXISTS `mahasiswa` (
`id` int(11) NOT NULL,
  `kode_mahasiswa` varchar(15) NOT NULL,
  `nama_mahasiswa` varchar(250) NOT NULL
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;

Langkah Ketiga

Buat file controller dengan nama c_mahasiswa.php didalam aplikasi beri nama didalam folder application\controllers\dan isinya sebagai berikut:

<?php

class C_mahasiswa extends CI_Controller{
 
 public function __construct(){
  parent::__construct();
  
  $this->load->model('m_mahasiswa');
 }
 
 public function index(){
  redirect('c_mahasiswa/tambah_mahasiswa');
 } 
 
 //MODUL MAHASISWA
  
 public function tambah_mahasiswa(){
  if($this->uri->segment(3)==""){
   $offset=0;
  }else{
   $offset=$this->uri->segment(3);
  }
  $limit = 5; 
  $data['mahasiswa'] = $this->m_mahasiswa->getAllMahasiswa($offset, $limit);
  $data['count'] = $this->m_mahasiswa->getAllMahasiswa_count(); 
  $config = array();
  $config['base_url'] = base_url(). 'c_mahasiswa/tambah_mahasiswa/';
  $config['per_page'] = $limit;
  $config['uri_segment'] = 3;
  $config['num_links'] = 5;  
  $config['first_tag_open'] = '<li>';
  $config['first_link'] = 'First';
  $config['first_tag_close'] = '</li>';
  $config['prev_link'] = 'Prev';
  $config['prev_tag_open'] = '<li>';
  $config['prev_tag_close'] = '</li>';
  $config['cur_tag_open'] = '<li class="active"><a href>';
  $config['cur_tag_close'] = '</a></li>';
  $config['next_link'] = 'Next';
  $config['next_tag_open'] = '<li>';
  $config['next_tag_close'] = '</li>';
  $config['num_tag_open'] = '<li>';
  $config['num_tag_close'] = '</li>';
  $config['last_tag_open'] = '<li>';
  $config['last_link'] = 'Last';
  $config['last_tag_close'] = '</li>';
  $config['total_rows'] = $data['count'];
  $this->pagination->initialize($config);
  $this->session->set_userdata('row', $this->uri->segment(3));
  $data['kode_mahasiswa'] = $this->m_mahasiswa->get_kode_mahasiswa();
  $data['error'] = "";    
  $this->load->model('m_mahasiswa');  
  $this->load->view('admin/mahasiswa/tambah_mahasiswa', $data);
 }  
 
 public function submit_tambah_mahasiswa(){ 
  $this->form_validation->set_rules('nama_mahasiswa','Nama Mahasiswa', 'required|xss_clean|max_length[255]|trim|strip_tags');
  if($this->form_validation->run() == TRUE){ 
   
   $input_kode_mahasiswa = $this->input->post('kode_mahasiswa');   
   $input_nama_mahasiswa= $this->input->post('nama_mahasiswa');
   $ganti = array("'");
   $oleh = "&#039;";   
   $kode_mahasiswa = str_replace($ganti, $oleh, $input_kode_mahasiswa);
   $nama_mahasiswa = str_replace($ganti, $oleh, $input_nama_mahasiswa);
   $this->m_mahasiswa->inputMahasiswa($kode_mahasiswa, $nama_mahasiswa);
   
   $this->session->set_flashdata('info', "Mahasiswa berhasil ditambahkan.");
   redirect('c_mahasiswa/tambah_mahasiswa');
  }else{ 
  redirect('c_mahasiswa/tambah_mahasiswa');
 }}
   
 public function edit_mahasiswa($kode_mahasiswa){  
  $data['edit_mahasiswa'] = $this->m_mahasiswa->getEditMahasiswa($kode_mahasiswa)->row();
  $data['judul'] = "Edit Mahasiswa | Mahasiswa";
  $this->load->view('admin/mahasiswa/edit_mahasiswa', $data);
 }
 
 public function submit_edit_mahasiswa(){
 $id = $this->input->post('kode_mahasiswa'); 
 $this->form_validation->set_rules('nama_mahasiswa','Nama Mahasiswa', 'required|xss_clean|max_length[255]|trim|strip_tags');
   $input_nama_mahasiswa= $this->input->post('nama_mahasiswa');
   $ganti = array("'");
   $oleh = "&#039;";   
   $nama_mahasiswa = str_replace($ganti, $oleh, $input_nama_mahasiswa);
   $this->m_mahasiswa->updateMahasiswa($id, $nama_mahasiswa);
   $this->session->set_flashdata('info', "Siswa berhasil diubah, gambar diubah.");
   redirect('c_mahasiswa/tambah_mahasiswa');   
 } 
 
 public function hapus_mahasiswa($kode_mahasiswa){
  $query = $this->m_mahasiswa->getEditMahasiswa($kode_mahasiswa)->row();      
  $this->m_mahasiswa->hapus_mahasiswa($kode_mahasiswa);
  redirect('c_mahasiswa/tambah_mahasiswa');
 }
 
 //END MODUL MAHASISWA
}

Langkah keempat

Membuat file model dengan nama m_mahasiswa.php didalam folder application\models\dan berikut isinya:


<?php 

class M_mahasiswa extends CI_Model{
 
 public function __construct(){
  parent::__construct();
 }
 
 // AWAL QUERY MAHASISWA
 
 //BUAT MODEL MAX_KODE_MAHASISWA
 public function get_kode_mahasiswa() {
  $tahun = date("Y");
  $kode = 'MHS';
  $query = $this->db->query("SELECT MAX(kode_mahasiswa) as max_id FROM mahasiswa"); 
  $row = $query->row_array();
  $max_id = $row['max_id']; 
  $max_id1 =(int) substr($max_id,9,5);
  $kode_mahasiswa = $max_id1 +1;
  $maxkode_mahasiswa = $kode.'-'.$tahun.'-'.sprintf("%04s",$kode_mahasiswa);
  return $maxkode_mahasiswa;
 }
 
 public function getAllMahasiswa($offset, $limit){
  $query = $this->db->query("SELECT * FROM mahasiswa ORDER BY kode_mahasiswa DESC LIMIT $offset, $limit");
  return $query;
 }
 
 public function getAllMahasiswa_count(){
  $query = $this->db->query("
   SELECT * FROM mahasiswa
  ");
  return $query->num_rows();
 }
 
 public function inputMahasiswa($kode_mahasiswa, $nama_mahasiswa){
  $query = $this->db->query("INSERT INTO mahasiswa VALUES('', '$kode_mahasiswa', '$nama_mahasiswa')");
 }
                 
 public function getEditMahasiswa($kode_mahasiswa){
  $query = $this->db->query("SELECT * FROM mahasiswa WHERE kode_mahasiswa = '$kode_mahasiswa'"); 
  return $query;
 }
 
 public function updateMahasiswa($id, $nama_mahasiswa){
  $query = $this->db->query("UPDATE mahasiswa 
         SET nama_mahasiswa = '$nama_mahasiswa' WHERE kode_mahasiswa = '$id'
        ");
 }
 
 public function hapus_mahasiswa($id){
  $this->db->query("DELETE FROM mahasiswa WHERE kode_mahasiswa = '$id' ");
 }
 //AKHIR QUERY MAHASISWA  
}

Langkah Kelima

Membuat file tambah_mahasiswa.php tempatkan didalam folder application\views\admin\mahasiswa\ buat folder admin lalu buat folder mahasiswa didalam folder admin, dan isi file tambah_mahasiswa.php seperti dibawah ini:

<!DOCTYPE html>
<html lang="en">
<head>
    <style>
    body {
  padding-top: 10px;
  padding-left: 10px;
  padding-right: 20px;
  margin: 0;
  font-family: "Helvetica";
  font-size: 14px;
  line-height: 18px;
  color: #000000;
  background-color: #ffffff;
 }
 
 .container,
 .navbar-fixed-top .container,
 .navbar-fixed-bottom .container {
 width: 80%;
 }

 .table {
  width: 80%;
  margin-bottom: 18px;
 }

 .table th,
 .table td {
  padding: 8px;
  line-height: 18px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #dddddd;
 }

 .table th {
  font-weight: bold;
 }

 .table thead th {
  vertical-align: bottom;
 }
 
 .table-bordered {
  border: 1px solid #dddddd;
  border-collapse: separate;
  *border-collapse: collapsed;
  border-top: 0;
  border-left: 0;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
        border-radius: 4px;
 }

 .table-bordered th,
 .table-bordered td {
 border-left: 1px solid #dddddd;
 }

 .table-striped tbody tr:nth-child(odd) td,
 .table-striped tbody tr:nth-child(odd) th {
 background-color: #f9f9f9;
 }

 .table tbody tr:hover td,
 .table tbody tr:hover th {
 background-color: #f5f5f5;
 }
 
 #Halaman
  .pagination {
  height: 36px;
  margin: 18px 0;
  }
 
  .pagination ul {
  display: inline-block;
  }

  .pagination li {
  display: inline;
  }

  .pagination a {
  padding: 10px 14px;
  }

  .pagination a:hover,
  .pagination .active a {
  background-color: #f0f0f0;
  }
  
    </style>
</head>
<body>
<center>
 <div class="container"> 
  <h1>Tambah Mahasiswa</h1><br />
      
      <div><!-- div well & form -->
       <form class="form-horizontal" action="<?php echo base_url(); ?>c_mahasiswa/submit_tambah_mahasiswa" method="POST" enctype="multipart/form-data">
       <fieldset>
        <div><br />
         <label>Kode Mahasiswa :</label>
         <input name="kode_mahasiswa" readonly value="<?php echo $kode_mahasiswa; ?>">
        </div><br />     
        <div>
         <label>Nama Mahasiswa :</label>
         <input name="nama_mahasiswa" type="text" value="<?php echo set_value('nama_mahasiswa'); ?>">
        </div><br />
             
       <div class="form-actions"><!-- button action -->
        <button type="submit" class="btn btn-primary">Simpan</button>
        <button class="btn">Batal</button>
       </div>
       </fieldset>
       </form>
      </div>
 </div>
  
  <h3>Daftar Mahasiswa, diurutkan berdasarkan Data Kode Mahasiswa Terakhir.</h3>
  <h3>Semua Mahasiswa berjumlah sebanyak: <?php echo $count; ?> yang tersimpan.</h3>
  <table class="table table-striped table-bordered">
   <thead>
    <th>No</th>
    <th>Kode Mahasiswa</th>
    <th>Nama Mahasiswa</th>
    <th colspan="2">Aksi</th>
   </thead>
   <tr>
    <?php $no=1; 
     foreach($mahasiswa->result() as $row){ 
    ?>
    <td><?php echo $this->session->userdata('row')+$no; ?></td>
    <td><?php echo ucwords($row->kode_mahasiswa); ?></td>
    <td><?php echo ucwords($row->nama_mahasiswa); ?></td>
         
    <td border="0">
     <a title="Edit Siswa Siswa" href="<?php echo base_url(); ?>c_mahasiswa/edit_mahasiswa/<?php echo $row->kode_mahasiswa; ?>">Edit</a> 
     | 
     <a href="#" onClick="if(confirm('Anda yakin HAPUS data ini? ')){document.location='<?php echo base_url()?>c_mahasiswa/hapus_mahasiswa/<?php echo $row->kode_mahasiswa; ?>'}" title="Hapus Mahasiswa" >Hapus</a>
    </td>
   </tr>
    <?php 
     $no++;
     } 
    ?>
  </table>
  <div class="pagination">
   <ul>
    <?php echo $this->pagination->create_links(); ?>
   </ul>
  </div>
  <hr />
  <div>
   <div class="span2">
   <footer>
   <p>&copy; jepretcode 2014.</p>
   </footer>
   </div>
  </div><br />
</center>
  </body>
</html>

Langkah keenam

Buka file routes.php yang ada di dalam folder application\config\

$route['default_controller'] = "welcome";
mejadi
$route['default_controller'] = "c_mahasiswa";

Coba lalukan pemanggilan dilocalhost apa yang terjadi?. Jika terjadi kesalahan "Fatal error: Call to undefined function redirect() in"  maka fungsi redirect tidak jalan sesuai dengan isi pada controller c_mahasiswa.php yaitu

redirect('c_mahasiswa/tambah_mahasiswa');

dan redirect lainnya yang ada didalam file controller c_mahasiswa.php, lalu bagaimana cara mengatasi Fatal error: Call to undefined function redirect() in ? yaitu dengan cara:
  • Buka file autoload.php yang ada didalam folder application\config\
  • Rubah isi sesuai dengan yang dibawah ini
$autoload['helper'] = array();

Mejadi

$autoload['helper'] = array('url');
  • Coba ulang membuka atau refresh di localhost
  • Apa yang terjadi ?
Jika mendapati kesalahan "Fatal Error: Call to member funtion query() on a non-object in" dan pesan Message:Undefined property: C_mahasiswa::$db seperti gambar dibawah ini:
Codeigniter Message: Undefined property: Controlloer ::$db

maksudnya adalah adanya pesan error dari controller dari file c_mahasiswa.php ketika memanggil model m_mahasiswa.php tidak bisa memanggil atau autoload database (alasannya karena database belum diconnectkan secara autoload) sesuai perintah model m_mahasiswa.php oleh karena itu ada pesan error Message: Undefined property: C_mahasiswa::$db. 
Lalu bagaimana cara mengatasi pesan A PHP Error was encountered ini, adalah dengan cara menghubungkan database dengan membuka file autoload.php yang ada difolder application\config\ dan rubahlah sesuai keteranga dibawah ini:

$autoload['libraries'] = array();

Menjadi

$autoload['libraries'] = array('database');
  • Lakukan pemanggilan ulang di localhost dan lalu apa yang terjadi?
  • Tentunya akan terjadi kesalahan lagi... (makin pusing aja) lihat gambar dibawah ini:
Codeigniter No database selected

Terjadi kesalahan "A Database Error Occured No database selected", hal ini terjadi karena kita belum mengisi database yang dipanggil oleh perintah autoload.php tadi yang meminta database.php, yang mana database.php belum diisi data atau nama file database yang kita buat sesuai langkah kedua yaitu db_mahasiswa, lalu bagaimana cara mengatasi nya?
  • Buka file database.php yang ada didalam folder application\config\
  • rubah isinya sesuai dibawah ini
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = '';
$db['default']['password'] = '';
$db['default']['database'] = '';

Menjadi

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';  //username localhost (sesuaikan dengan username localhost anda)
$db['default']['password'] = 'mysql'; //password localhost (sesuaikan dengan password localhost anda)
$db['default']['database'] = 'db_mahasiswa';

Lakukan langkah refresh ulang di localhost dan lihat apa yang terjadi, tentunya ada error A PHP Error was encountered dengan pesan Undefined property: C_mahasiswa::$pagination seperti gambar dibawah ini:
Undefined property: Controller::$pagination

Hal ini terjadi karena didalam file controller c_mahasiswa.php kita menggunakan pagination untuk menampilkan data dari database agar lebih mudah dilihat. mungkin bisa dilihat isinya seperti controller c_mahasiswa diatas atau lihat dibawah ini:

$this->pagination->initialize($config);

Lalu bagaimana cara mengatasi pesan error Message: Undefined property: Controller::$pagination yang terjadi pada saat langkah ini? berikut penjelasannya
  • Buka lagi file autoload.php seperti langkah sebelumnya yang ada difolder application\config\
  • lalu tambahkan autoload pemanggilan file pagination.php yang ada didalam folder system\libraries\ dengan cara seperti dibawah ini:
$autoload['libraries'] = array('database'); 

Menjadi 

$autoload['libraries'] = array('database','pagination');

Langkah selanjutnya refresh lagi localhost lalu apa yang terjadi, masih menemukan pesan error?. Message: Undefined property:C_mahasiswa::$session lihat gambar dibawah ini:

Codeigniter Undefined property:Controller ::$session

Kenapa hal ini bisa terjadi error, karena didalam controller c_mahasiswa.php memanggil file session.php yang ada didalam folder system\libraries\ seperti isi yang ada didalam file c_mahasiswa.php diatas atau bisa dilihat yang seperti dibawah ini:

$this->session->set_userdata('row', $this->uri->segment(3));

Lalu bagaimana mengatasi pesan error "Message: Undefined property:C_mahasiswa::$session yang terjadi pada gambar diatas, yaitu sama dengan langkah sebelumnya berikut caranya:
  • membuka file autoload.php yang ada didalam folder application\confiq\
  • tambahkan autoload pemanggilan file session.php yang ada didalam folder system\libraries\ dengan cara seperti dibawah ini
$autoload['libraries'] = array('database','pagination');

Menjadi

$autoload['libraries'] = array('database','pagination','session');


Langkah Selanjutnya refresh localhost lagi, lalu lihat apa yang terjadi?. masih mendapati error in order to use the Session class you are required to set an encryption key in your confiq file,  lihat gambar dibawah :
Codeigniter in order to use the Session class you are required to set an encryption key in your confiq file

kenapa pesan error ini muncul? karena untuk menggunakan Session seperti diatas maka kita diminta untuk mengatur atau mengisi encryption key yang ada didalam config.php, lihat cara mengatasi pesan error in order to use the Session class you are required to set an encription key in your config file seperti dibawah ini:

$config['encryption_key'] = '';

Menjadi

$config['encryption_key'] = 'jepret0123456789code';

Untuk pengisian encryption _key silahkan cari tentang cara mengisi kode seperti diatas

Langkah selanjutnya refresh localhost lagi dan lihat apa yang terjadi?. Apakah masih belum tampil ?. apakah hanya tampil seperti gambar berikut:

Codeigniter Input / Tambah Data

Kalau dilihat gambar diatas maka semua seperti form, html, tabel dan lainnya belum tampil? Lalu bagaimana cara agar tampilannya sesuai yang kita inginkan seperti isi yang sesuai dengan tambah_mahasiswa.php seperti langkah kelima diatas. karena kalau diperhatikan isinya ada form pengisian seperti nama_mahasiswa dan tampilan tabel seluruh data mahasiswa belum tampil. lalu bagaimana cara mengatasi tampilan tabel form dan html tidak tampil ini, berikut caranya:
  • Buka lagi file autoload.php didalam folder application\config\
  • Tambahkan kode seperti dibawah ini
$autoload['helper'] = array('url',);

Menjadi

$autoload['helper'] = array('url','file','html','form');


Silahkan dilihat dan dirasakan (hehehe pakai perasaan ni yee) apakah tampilannya sudah seperti gambar dibawah ini?. Jika sudah maka Anda sudah sukses melakukan langkah demi langkah dan mengetahui kesalahan-kesalahan didalam codeigniter dan cara mengatasi kesalahan-kesalahan yang terjadi dan logika langkah ini dapat diterapkan untuk melakukan project lain yang menggunakan codeigniter.

Codeigniter Create Input Edit Delete

Tunggu dulu jangan senang dulu karena tampilannya sepertinya ok... coba deh diinput data baru?. Apakah terjadi kesalahan Not Found - 404 The requested was not found on this server. apakah muncul pesan seperti itu?. jika iya kenapa dan bagaimana mengatasinya?. Berikut keterangannya:
  • Kenapa muncul Not Found - 404? karena ketika input data dan memanggil function submit_tambah_mahasiswa yang ada didalam controller c_mahasiswa meminta redirect ke : "http://localhost/mahasiswa/c_mahasiswa/submit_tambah_mahasiswa" sementara default url kita menggunakan index.php seperti http://localhost/index.php/c_mahasiswa/submit_tambah_mahasiswa tentu tidak akan jalan.
redirect('c_mahasiswa/tambah_mahasiswa');
  • Lalu bagaimana cara mengatasinya?. lakukan langkah berikut
Bagaimana Cara Menghilangkan index.php di codeigniter
  • Buka confiq.php yang ada difolder application\confiq\
  • Sesuaikan seperti dibawah ini
$config['index_page'] = 'index.php';

Menjadi

$config['index_page'] = '';
  • Buat file .htaccess yang ada didalam folder utama dalam hal ini "mahasiswa"
  • Isi file seperti contoh dibawah ini.
<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php/?$1 [L]
</IfModule>
  • Coba dilihat lagi atau di refresh localhost nya.
  • Apakah masih ada kesalahan?
  • Tentu akan keluar pesan error Message: Undefined property: C_mahasiswa::$form_validation
Kenapa keluar pesan Message: Undefined property: Controller::$form_validation ini?. karena didalam controller c_mahasiswa.php meminta menjalankan Form_validation.php yang ada di folder system\libraries\ dengan perintah seperti dibawah ini yang ada didalam controller c_mahasiswa.php

$this->form_validation->set_rules('nama_mahasiswa','Nama Mahasiswa', 'required|xss_clean|max_length[255]|trim|strip_tags');

Lalu bagaimana cara mengatasi error Message: Undefined property: Controller::$form_validation ini?. Berikut caranya:

  • Buka lagi file autoload.php yang ada didalam application\config\
  • Lalu isi sesuai seperti kode dibawah ini
$autoload['libraries'] = array('database','pagination','session');

Menjadi

$autoload['libraries'] = array('database','pagination','session','form_validation');

Berikut video tutorial membuat max id otomatis dengan codeigniter


Bagaimana? apakah sudah jalan semua. jika sudah berarti sudah komplit deh caranya. selamat menikmati.
Senang bila dishare jika memang bermanfaat untuk anda dan yang lainnya.

Saturday, December 20, 2014

Jepretcode: December 2014

Cara Menulis Syntax Highlighter di Blogspot

Cara menulis Syntax highlighter di blogspot, bagi kita yang ingin menulis dan berbagi script atau kode program php, java, html ataupun yang lainnya agar tampil lebih menarik seperti adanya tab view source untuk memudahkan pengguna untuk melihat kode seperti dibawah ini,

<?php

class Admin extends CI_Controller{
 
 public function __construct(){
  parent::__construct();
  $this->_is_logged_in();
  $this->load->model('modeladmin');
 }
 
 public function index(){
  redirect('admin/produk');
 }

maka harus melakukan beberapa langkah untuk mendapatkan tampilan seperti diatas, untuk tampilan seperti ini lebih mudah dimengerti karena agak berpisah antara kode dengan informasi yang lain pada halaman artikel di blogspot. berikut langkah-langkah untuk menulis syntax highlighter diblogger.
  1. Buka dashboard lalu pilih template pilih tab edit HTML
  2. Perlu di ingat Backup dulu template kita agar aman, karena jika terjadi kesalahan maka akan bisa dikembalikan dari file yang sudah kita backup tadi
  3. Jika sudah masuk kedalam edit HTML maka cari kode </head> dengan cara tekan tombol keyboard Ctrl + f dan masukkan kata</head> dikotak pencarian yang ditunjukkan sebelah atas kolom, lalu tekan enter
  4. Setelah ketemu letak kan kode dibawah ini diatas kode </head>
<link href='http://alexgorbatchev.com/pub/sh/2.1.382/styles/shCore.css' rel='stylesheet' type='text/css'/> 
<link href='http://alexgorbatchev.com/pub/sh/2.1.382/styles/shThemeFadeToGrey.css' rel='stylesheet' type='text/css'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shCore.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushCpp.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushCSharp.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushCss.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/current/scripts/shYouBrushJava.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushJScript.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushPhp.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushPython.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushRuby.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushSql.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushVb.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushXml.js' type='text/javascript'/> 
<script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushPerl.js' type='text/javascript'/> 
<script language='javascript'> 
SyntaxHighlighter.config.bloggerMode = true; 
SyntaxHighlighter.config.clipboardSwf = &#39;http://alexgorbatchev.com/pub/sh/2.1.382/scripts/clipboard.swf&#39;; 
SyntaxHighlighter.all(); 
</script>

Langkah ke 5. Save template

Untuk bagaimana cara pelulisan di postingan blog atau artikel yang pertama dalam entry baru pilih HTML dan tulis kode seperti contoh dibawah ini dan lihat hasilnya pada bagian atas artikel ini.

<pre class="brush:css, brush:html, brush:js">&lt;?php

class Admin extends CI_Controller{
 
 public function __construct(){
  parent::__construct();
  $this-&gt;_is_logged_in();
  $this-&gt;load-&gt;model('modeladmin');
 }
 
 public function index(){
  redirect('admin/produk');
 }
</pre>
Perlu diperhatikan hasil diatas bagaimana cara penulisan didalam HTML postingan kita maka kode yang ingin kita tampilkan haruslah di parse dahulu seperti tampilan diatas dan hasilnya akan terlihat kode yang sebenarnya yang tampil pada bagian paling atas postingan ini. Untuk mem parse kode script bisa menggunakan layanan parse secara online, silahkan search di google, bing, atau yahoo.