PDKT CodeIgniter : View [Part 3]


View adalah file HTML yang dipanggil melalui controller. File HTML tersebut dapat berupa fragmen-fragmen seperti header, footer, sidebar dll. Sebagai contoh, kita buat sebuah view dengan nama hello_view.php dan save di folder views (C:\xampp\htdocs\CI\system\application\views).

<html>
     <head>
        <title>My WebPage</title>
     </head>
     <body>
       <h1 style="color:blue">Welcome to my webpage</h1>
     </body>
</html>

Kemudian di file controller yang telah dibuat sebelumnya (blog.php), kita tinggal memanggilnya dengan menggunakan script $this->load->view(‘nama_view’); View yang kita panggil tidak perlu menyertakan extensi .php nya.

<?php
  class Hello extends Controller {
    function index() {
      $this->load->view('hello_view');
    }
  }
?>

VIEW DIDALAM SUB-FOLDER

View juga bisa kita letakkan dalam suatu sub-folder. Misalnya didalam folder views, kita memiliki sub folder dengan nama ‘view_sub’ dan didalamnya terdapat hello_view.php. Maka di dalam controller kita panggil dengan format $this->load->view(‘folder_name/file_name’); sehingga menjadi seperti berikut : $this->load->view(‘view_sub/hello_view’);

PASSING DATA DARI CONTROLLER KE VIEW

Dari dalam controller, kita bisa melewatkan data dari file controller ke view. Di view data yang kita lewatkan, dapat kita tampilkan atau proses. Data yang kita lewatkan bisa berupa array ataupun object, dan nama variabel tersebut kita masukkan sebagai parameter kedua dari fungsi loading. Ubahlah file hello.php seperti berikut :

<?php
class Hello extends Controller {
  function index() {
    $data['judul'] = 'Welcome To My Web Page';
    $data['isi_heading'] = 'Selamat Datang';
    $this->load->view('hello_view',$data);
  }
}
?>
<?php
class Hello extends Controller {
  function index() {
    $data = array (
      'judul' => 'Welcome To My Web Page',
      'isi_heading' => 'Selamat Datang'
    );
    $this->load->view('hello_view',$data);
  }
}
 ?>

Kemudian di file hello_view.php kita ubah seperti berikut :

<html>
  <head>
    <title><?php echo $judul;?></title>
  </head>
<body>
  <h1 style="color:blue"><?php echo $isi_heading; ?></h1>
</body>
</html>

LOOPING

Selain passing simple array, kita juga bisa passing multidimensi array jadi di view bisa kita lakukan looping untuk menampilkan data. Ubahlah file hello.php seperti berikut :

<?php
  class Hello extends Controller {
    function index() {
      $data['judul'] = "My Webpage";
      $data['isi_heading'] = 'Keluarga : ';
      $data['family'] = array ('Ayah','Bunda', 'Anak', 'Kakek','Nenek');
    }
  }
?>

Kemudian di file hello_view.php kita ubah seperti berikut :

<html>
 <head>
  <title><?php echo $judul;?></title>
 </head>
<body>
 <h1 style="color:blue"><?php echo $isi_heading; ?></h1>
 <ul>
  <?php foreach ($family as $item): ?>
  <li style="color:red"><?php echo $item;?></li>
  <?php endforeach;?>
 </ul>
</body>
</html>

Untuk menampilkan data dari database juga hampir sama. Hasil dari suatu query kita masukkan kedalam array dan array tersebut kita pass ke view. Didalam view nya tinggal kita looping. Mudah2an infonya ini bisa bermanfaat…. 😀

One thought on “PDKT CodeIgniter : View [Part 3]

Leave a comment