Page 112 - Framework Codeigniter 2
P. 112

www.koder.web.id – Kumpulan tutorial komputer

            Chapter 12
            Kasus 8. CodeIgniter dan Ajax




            AJAX yang dimaksud disini bukanlah nama club sepakbola yang berasal dari Amsterdam, Anda

            atau pun nama pahlawan dalam sejarah perang Trojan, tetapi  AJAX di sini adalah singkatan dari
            Asynchronous  JavaScript  and  XML.  Pada  intinya  ajax  itu  merupakan  gabungan  beberapa
            teknologi yang bertujuan untuk menghindari page reload. Dengan menghindari page reload, kita

            dapat menghindari paradigma click-and-wait  serta memberikan sebuah fitur yang cukup kompleks
            pada  website  seperti  validasi  data  secara  realtime,  drag  n  drop  dan  fitur-fitur  lain  yang  belum
            dimiliki web biasa.


            Dengan    AJAX,  suatu  aplikasi  web    dapat  mengambil  data  kemudian  diolah  di  client  melalui
            request  asynchronous  HTTP  yang  diinisialisasi  oleh  Javascript,  sehingga  dapat  mengupdate

            bagian-bagian tertentu dari web tanpa harus memanggil keseluruhan halaman web. Request ini
            dapat dieksekusi dalam beberapa cara dan beberapa format transmisi data. Dikombinasikannya
            cara  pengambilan  data  remote  dengan  interaktivitas  dari  Document  Object  Model  (DOM)  telah

            menghasilkan  generasi  terbaru  dari  aplikasi  web  yang  menggebrak  aturan-aturan  tradisional
            tentang apa yang dapat terjadi di dalam web. Keuntungan dari aplikasi web berbasis AJAX adalah

            memungkinkan  untuk  membuat  website  dan  aplikasi  web  yang  lebih  baik  dan  lebih  responsif.
            Sehingga meningkatkan kemudahan pengguna.


            Codeignter sebenarnya tidak terpengaruh dengan teknik ajax ini karena ajax bekerja di sisi clinet
            sedangkan  CI  bekerja  disisi  server.  Yang  perlu  dipersiapkan  hanya  di  sisi  template  dan  view.
            Untuk  bagian  library  template  kita  melakukan  perubahan  dengan  menambahkan  pengecekan

            apakah sebuah request tersebut merupakan ajax request apa bukan.

            application/libraries/template.php
            1.  <?php
            2.  class Template {
            3.  protected $_ci;
            4.
            5.  function __construct()
            6.  {
            7.     $this->_ci =&get_instance();
            8.  }
            9.
            10.  function display($template,$data=null)
            11.  {
            12.     if(!$this->is_ajax())
            13.     {
            14.          $data['_content']=$this->_ci->load->view($template,
            15.          $data, true);
            16.          $data['_header']=$this->_ci->load->view('template/header',
            17.          $data, true);
                                                                                                         107
   107   108   109   110   111   112   113   114   115   116   117