Anda di halaman 1dari 12

Membangun Aplikasi Perkantoran dengan Yii Framework

NininSaptoHargiyanto sapto.hargi@depkeu.go.id LisensiDokumen: Copyright 20032012IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah bebas atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.

A. PENDAHULUAN
PHP merupakan singkatan rekursif (akronim berulang) dari PHP Hypertext Preprocessor. PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini atau dalam kata lain bisa diartikan sebuah bahasa pemrograman web yang bekerja di sisi server (server side scripting) yang dapat melakukan konektifitas pada database yang di mana hal itu tidak dapat dilakukan hanyadenganmenggunakansintakssintaksHTMLbiasa.

Mengenal Dan Instalasi Yii Framework


1. Apa itu Yii?
Yii adalah kerangka kerja bahasa pemrograman PHP berorientasi objek yang menerapkan poladesaindengankonsepmodel-view-controller (MVC).

Konsep MVC adalah cara pandang membuat aplikasi web-based dengan memisahkan antara data (Model), tampilan (View) dan cara pemrosesan (Controller). DimanaMendapatkanYii? Download file di http://www.yiiframework.com/ release terakhir ketika tutorial ini ditulis adalahversi1.1dengannamafileyii1.1.10.r3566.tar.gz

2. Bagaimana cara menginstal Yii?


Software yang mesti diinstall adalah Apache Web Server, penulis menggunanakan XAMPP. Pastikan Apache dan Mysql telah di klik start, lalu Unzip file yii1.1.10.r3566.tar.gz di root directoriyaitudifolderC:\xampp\htdocs\


KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com 1

MEMBUAT APLIKASI WEBBASED DENGAN YII


1. Menyiapkan file di server
Buka Command Prompt lalu pindahkan lokasi current directory dengan mengetik perintah berikut:
cd C:\xampp\php\

kemudianenter,laluuntukmembuatkerangkaaplikasiYii,jalankanperintahberikut:
php.exe C:\xampp\htdocs\yii-1.1.10.r3566\framework\yiic C:\xampp\htdocs\aplikasiku kemudianketikamunculpertanyaanketik:yes webapp

perintah diatas berfungsi untuk membuat folder bernama aplikasiku didalam root directory yaitu di C:\xampp\htdocs\ mengacu pada aturan yang dibuat oleh Yii, dimana Yii telah kita copy paste di dalam C:\xampp\htdocs\yii1.1.10.r3566. Hasilnya adalah akan muncul commandberikut:
Your application has C:\xampp\htdocs\aplikasiku been created successfully under

Wow, aplikasi anda telah sukses dibuat. Untuk mengetes benar tidaknya, Silahkan buka browserkesayanganandadanketikurlhttp://localhost/aplikasiku

2. Mengganti Tampilan Awal


Ketika anda buka url aplikasi anda terdapat keterangan jelas bagaimana cara mengganti tampilan web anda. Dengan pengetahuan HTML, tentu sangat mudah mengganti halaman ini. Buka file C:\xampp\htdocs\aplikasiku\protected\views\site\index.php editlah sesuai kreatifitasAnda,misalnya
<h1>Selamat Datang di Aplikasi Web-based Pusdiklat Keuangan Umum</h1> <p>Aplikasi ini digunakan untuk melakukan pengelolaan terhadap administrasi program diklat yang diselenggarakan oleh Pusdiklat Keuangan Umum - Badan Pendidikan dan Pelatihan Keuangan - Kementerian Keuangan</p> <p>Pendaftaran pegawai untuk mengikuti diklat dapat diselenggarakan secara online dengan sistem yang terintegrasi dan dapat dilihat secara uptodate secara online</p> <p>Terima kasih</p>

Kemudian untuk mengganti footer default Yii, saya akan buka file di direktori C:\xampp\htdocs\aplikasiku\protected\views\layouts\main.php kemudian pada bagian bawahadatampilansepertiberikut:
<div id="footer"> Copyright copy; <?php echo date('Y'); ?> by My Company.<br/> All Rights Reserved.<br/> <?php echo Yii::powered(); ?> </div><!-- footer -->

Lalusayaubahmenjadisepertiini:
<div id="footer"> Copyright copy; <?php echo date('Y'); ?> by Hargi.<br/> All Rights Reserved.<br/> Powered by PusdiklatKU </div><!-- footer -->

3. Membuat database sederhana


Sebelum membuat database ada perlunya untuk menyiapkan software databse designer, penulismenggunakanMySQLWorkbench,skenariokitakaliiniakanmembuataplikasibisnis KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com 2

yang berhungan dengan training, buka browser lalu ketikkan http://localhost/phpmyadmin, buat database baru dengan nama aplikasikudb, buat 4 tabel dengan ketentuan sebagai berikut: 1. Tableuserdengan4fieldyaitusebagaiberikut: a. iduser,int(11) b. username,varchar(45) c. password,varchar(45) d. namevarchar(45) 2. Tablecategorydengan2fieldyaitusebagaiberikut: a. idcategory,int(11) b. category_name,varchar(45) 3. Tabletrainingdengan5fieldyaitusebagaiberikut: a. idtraining,int(11) b. name_training,varchar(45) c. hours,varchar(45) d. time_start,(time) e. time_end,(time) 4. Tableparticipantdengan3fieldyaitusebagaiberikut: a. idparticipant,int(11) b. name_participant,varchar(45) c. nip,bigint(18) dengangambarEERsebagaiberikut:

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

Berikutscriptmysqlnya:

CREATE TABLE IF NOT EXISTS `category` ( `idcategory` int(11) NOT NULL AUTO_INCREMENT, `category_name` varchar(45) DEFAULT NULL, PRIMARY KEY (`idcategory`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; INSERT INTO `category` (`idcategory`, `category_name`) VALUES (1, 'Diklat Teknis Umum (DTU)'), (2, 'Diklat Fungsional (DF)'); CREATE TABLE IF NOT EXISTS `participant` ( `idparticipant` int(11) NOT NULL AUTO_INCREMENT, `name_participant` varchar(45) DEFAULT NULL, `nip` bigint(18) DEFAULT NULL, `city` varchar(45) DEFAULT NULL, `trainingid` int(11) NOT NULL, PRIMARY KEY (`idparticipant`), KEY `fk_participant_training1` (`trainingid`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ; INSERT INTO `participant` (`idparticipant`, `name_participant`, `nip`, `city`, `trainingid`) VALUES (1, 'Pegawai1', 198607202007011004, 'Surabaya', 2), (2, 'Ninin Sapto Hargiyanto', 198607202007011001, 'Jakarta', 2); CREATE TABLE IF NOT EXISTS `training` ( `idtraining` int(11) NOT NULL AUTO_INCREMENT, `name_training` varchar(45) DEFAULT NULL, `hours` varchar(45) DEFAULT NULL, `time_start` date DEFAULT NULL, `time_end` date DEFAULT NULL, `categoryid` int(11) NOT NULL, PRIMARY KEY (`idtraining`), KEY `fk_training_category` (`categoryid`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; INSERT INTO `training` (`idtraining`, `name_training`, `hours`, `time_start`, `time_end`, `categoryid`) VALUES (1, 'Legal Drafting', '30', '2012-07-12', '2012-07-19', 1), (2, 'Pranata Komputer', '150', '2012-07-15', '2012-08-10', 2); CREATE TABLE IF NOT EXISTS `user` ( `iduser` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(45) DEFAULT NULL, `password` varchar(45) DEFAULT NULL, `name` varchar(45) DEFAULT NULL, PRIMARY KEY (`iduser`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; INSERT INTO `user` (`iduser`, `username`, `password`, `name`) VALUES (1, 'admin', '21232f297a57a5a743894a0e4a801fc3', 'Administrator'), (2, 'hargi', '69510e32280ccbb3eb99bb36fc24b312', 'Hargi'); ALTER TABLE `participant` ADD CONSTRAINT `participant_ibfk_1` FOREIGN KEY (`trainingid`) REFERENCES `training` (`idtraining`) ON DELETE CASCADE ON UPDATE CASCADE; ALTER TABLE `training` ADD CONSTRAINT `fk_training_category` FOREIGN KEY (`categoryid`) REFERENCES `category` (`idcategory`) ON DELETE NO ACTION ON UPDATE NO ACTION;

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

4. Melakukan Generate Tabel dengan Gii


Fitur Yii framework yang membuat cepat suatu pemrograman adalah adanya bantuan dari extensions bernama Gii, singkatan dari Yii Code Generator yang berfungsi untuk menghasilkan kode secara otomoatis. Implementasinya adalah membuat model, class dan controllerdenganklikkliksaja. Ok, langsung aja kita buka folder C:\xampp\htdocs\aplikasiku\protected\config\main.php lalucaricodeberikut:
'modules'=>array( // uncomment the following to enable the Gii tool /* 'gii'=>array( 'class'=>'system.gii.GiiModule', 'password'=>'Enter Your Password Here', // If removed, Gii defaults to localhost only. Edit carefully to taste. 'ipFilters'=>array('127.0.0.1','::1'), ), */ ),

Ubahcodenyamenjadisepertiberikut:
'modules'=>array( 'gii'=>array( 'class'=>'system.gii.GiiModule', 'password'=>'passwordku', 'ipFilters'=>array('127.0.0.1','::1'), ), ),

Kode diatas berfungsi untuk mengaktifkan Yii Code Generator (Gii) dengan mengisikan passwordnya dengan nilai passwordku, kemudian cari lagi kode koneksi database nya sepertidibawahini:
/* 'db'=>array( 'connectionString' => 'mysql:host=localhost;dbname=testdrive', 'emulatePrepare' => true, 'username' => 'root', 'password' => '', 'charset' => 'utf8', ), */

Laluubahmenjadisepertiberikut:
'db'=>array( 'connectionString' => 'mysql:host=localhost;dbname=aplikasikudb', 'emulatePrepare' => true, 'username' => 'root', 'password' => '', 'charset' => 'utf8', ),

Kode diatas memberikan koneksi ke database kita yang telah kita buat sebelumny. Buka lagi browser anda lalu ketikkan alamat http://localhost/aplikasiku/index.php?r=gii masukkan passwordku di kolom password lalau enter. Akan muncul 5 list, yang akan kita lakukan disini adalahModel GeneratordanCrud Generator saja. KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com 5

Pertama Klik pada Model Generator, pastikan anda ingat nama 4 tabel di database kita, isikanTableNamedengannamatabelkita,isikannamaModelClassdengannamatabel kitadenganhurufawalkapitalklikPreview,KlikGenerate.Ulangiuntuk3tabelkita KeduaKlikpadaCrudGenerator,isikanModelClassdengannilaipadastepPertamatadi, yaitu nama tabel dengan huruf awal kapital. Klik preview lalu Generate. Ulangi untuk 3 ModelClasslainnya. Selamat,kinikitatelahmempunyai 4fileModeldidalamfoldermodels,berekstensiphp 4fileControllerdidalamfoldercontrollers,berekstensiphp 4folderViewdidalamfolderviews Semuanya ada di dalam folder C:\xampp\htdocs\aplikasiku\protected. Kita akan fokus pada folder di dalam protected ya. Jika ada kesalahan pastikan anda telah benar melakukan generateModel GeneratordanCrud Generator Referensi:

5. Pengelolaan Aplikasi Webbased


Hasil generate Gii pada tahap sebelumnya telah cukup untuk melakukan pengeloaan data daninformasilewatwebyangterkoneksidengandatabasekita.Kitatelahdapatmenambah, merubahdanmenghapusdata. Bukabrowserketikkanhttp://localhost/aplikasiku/index.php?r=training Hasilnyaadalah andadapatmelihatdaftartabelberisitrainingyangtelahterhubungdengan databasekita.
a) Menambah (Insert)

Untuk menambah data baru, diperlukan login. Default Yii adalah menggunakan username : admin dan password : admin. Setelah berhasil login, Anda dapat melakukan penambahan data ke dalam tabel dengan melihat pada jendela Operations, lalu klik Createyangterdapatpadasisisampingtabellistingdata.
b) Mengurangi (Update)

Samasepertipadapointa,klikpadaUpdate
c) Menghapus (Delete)

Samasepertipadapointa,klikpadaDelete
d) Mengelola (Manage)

Sama seperti pada point a, klik pada Manage. Akan muncul listing data yang powerfull, fasilitas search berdasarkan data, ditambah pula 3 fitur Insert (Menambah), Update (Merubah),danMenghapus(Delete).

MODIFIKASI APLIKASI DASAR


1. Modifikasi Menu Kategori
PadamenustandarYii,kitainginmenambahkanmenubaru. BukaC:\xampp\htdocs\aplikasiku\protected\views\layouts\main.phpcarihalamanberikut:
<div id="mainmenu"> <?php $this->widget('zii.widgets.CMenu',array( 'items'=>array( array('label'=>'Home', 'url'=>array('/site/index')), array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')), array('label'=>'Contact', 'url'=>array('/site/contact')),

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

Ubahmenjadisepertiberikut:

<div id="mainmenu"> <?php $this->widget('zii.widgets.CMenu',array( 'items'=>array( array('label'=>'Home', 'url'=>array('/site/index')), array('label'=>'Kelola Diklat', 'url'=>array('/category/index')),

Hasilnya memberikan link Kelola Diklat dengan tampilan (view) adalah category/index.php. kedalamMenu.

2. Modifikasi Tampilan Kategori


Untukmerubahtampilannyabukafilenyadidalamfolderberikut: C:\xampp\htdocs\aplikasiku\protected\views\categorylalueditindex.php Ubah<h1>Categories</h1>menjadi<h1>Pilih Kategori Diklat</h1> Tampilanlistingnyaternyatadiarahkanke_view,bukalagifile C:\xampp\htdocs\aplikasiku\protected\views\category\_view.php Ubah
<b><?php echo CHtml::encode($data->getAttributeLabel('idcategory')); ?>:</b> <?php echo CHtml::link(CHtml::encode($data->idcategory), array('view', 'id'=>$data->idcategory)); ?> <br /> <b><?php echo CHtml::encode($data>getAttributeLabel('category_name')); ?>:</b> <?php echo CHtml::encode($data->category_name); ?> <br />

Menjadicukupsepertiini
<h2><?php echo CHtml::link(CHtml::encode($data->category_name), array('view', 'id'=>$data->idcategory)); ?></h2>

Ini akan menjadikan tampilan ketika di klik menu kategori, akan muncul listing data kategori saja.

3. Modifikasi Isi Halaman


Ketikadiklikmasingmasingkategorikitaakandihadapkanpadatampilahnamadarikategori tersebut beserta link Operationsnya. Kini kita akan merubah tampilanya menjadi daftar diklatyangmasukdalamkategoritersebut a. Pertama masuk ke folder view dari kategori lalu buka file view.php, hapus semua isinya lalugantimenjadiberikutini
<?php $this->breadcrumbs=array( 'Categories'=>array('index'), $model->category_name, );?>

Haliniakanmemberikantampilanjejakposisi(breadcrumbs)dengannamakategori. b. Selain breadcrumbs, tentunya harus ada isinya. Isi dari kategori setelah diklik adalah list diklat.Ada5langkahsbbyaitu: 1) Pada TrainingController definisikan dulu parameter Category pada bagian ActionCreate.BukafoldercontrollerlalubukafileTrainingController.phpaturhingga tampilanyasamadengancodedibawahini: KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com 7

public function actionCreate($id) { $model=new Training; if(isset($_POST['Training'])) { $model->attributes=$_POST['Training']; $model->categoryid=$id; if($model->save()) $this->redirect(array('view','id'=>$model>idtraining)); } $this->render('create',array( 'model'=>$model, )); }

Dengan kode ini, orang yang akan menambah diklat baru, harus melewati langkah mengeklik nama kategori dahulu. Ini bermanfaat supaya tidak ada diklat dibuat tanpakategorisamasekali. 2) Sekarang saatnya membuat link Menambah Diklat pada view Category. Masuk ke folderviewdarikategorilalubukafileview.phptambahkankodedibawahini:
<?php $this->menu=array( array('label'=>'Tambah Diklat Baru', 'url'=>array('training/create','id'=>$model->idcategory )),); ?>

3) Ubah juga view dari _form.php dari Training, hilangkan field Categoryid atau untuk amannyauncheckdengan//
<?php //echo $form->labelEx($model,'categoryid'); ?> <?php //echo $form->textField($model,'categoryid'); ?> <?php //echo $form->error($model,'categoryid'); ?>

Perintah diatas tidak digunakan karena pada langkah sebelumnya kita telah mendefinisikan kategori untuk setiap Diklat yang dipilih, selain itu kalau diaktifkan jugaakanterjadikonflikdualismekategori. 4) Dibagian view Kategori ini, selain bisa membuat training baru kita juga ingin menambah peserta ke masingmasing diklat. Buka CategoryController.php atur scriptpadaactionViewmenjadisepertiberikut:
public function actionView($id) { $totraining=new Training('search'); $totraining->unsetAttributes(); $totraining->categoryid=$id; $this->render('view',array( 'model'=>$this->loadModel($id), 'totraining'=>$totraining, )); }

5) Masuk ke folder view dari kategori lalu buka file view.php, kita ingin menampilkan listing diklat yang dikategorikan per masingmasing kategori, tambahkan kode sebagaiberikut:
<?php $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'training-grid', 'dataProvider'=>$totraining->search(), //'filter'=>$totraining, 'emptyText'=>'Belum ada training pada kategori ini',

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

'summaryText'=>'', 'columns'=>array( array( 'name'=>'No', 'type'=>'raw', 'value'=>'$data->idtraining', ), array( 'name'=>'Nama diklat', 'type'=>'raw', 'value'=>'Chtml::link($data>name_training,array(\'training/view\',\'id\'=>$data->idtraining))', ), array( 'name'=>'Jamlat', 'type'=>'raw', 'value'=>'$data->hours', ), )));?>

Berhasilsudahandamembuattampilanstatiskategoridiklatsampaikeisiisinya.

4. Modifikasi Sub isi Halaman Aplikasi


Langkah ini adalah mirip langkah membuat kategori ke diklat, kita akan membuat peserta yang dikategorikan per masingmasing diklat. Hasilnya adalah mirip sebelumnya, kalau sebelumnyaketikakategoridiklik,yangmunculadalahlistingdiklat,makalangkah iniadalah jika diklat diklik yang muncul adalah listing peserta diklat. Tentu ada sedikit perbedaan yaitu tidak dilakukan langkah 2) karena tidak ada sub sub isi halaman, artinya peserta diklat tidak memiliki anak kategori lagi, di kondisi tertentu bisa saja ada tapi untuk kali ini tidak ada. Langkahketigajugatidakkitaulangikarenakitatelahmemasukkanpembahasanpembuatan Marikitamulai. a. Pertama masuk ke folder view dari training lalu buka file view.php, hapus semua isinya lalugantimenjadiberikutini
<?php $this->breadcrumbs=array( 'Categories'=>array('index'), $model->name_training, ); ?>

Haliniakanmemberikantampilanjejakposisi(breadcrumbs)dengannamadiklat. b. Selain breadcrumbs, tentunya harus ada isinya. Isi dari diklat setelah diklik adalah list peserta.Ada5langkahsbbyaitu: 1) Pada ParticipantController definisikan dulu parameter Training pada bagian ActionCreate. Buka folder controller lalu buka file ParticipantController.php atur hinggatampilanyasamadengancodedibawahini:
public function actionCreate($id) { $model=new Participant; if(isset($_POST['Participant'])) { $model->attributes=$_POST['Participant']; $model->trainingid=$id; if($model->save()) $this->redirect(array('view','id'=>$model>idparticipant)); } $this->render('create',array(

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

'model'=>$model, )); }

Dengan kode ini, orang yang akan menambah diklat baru, harus melewati langkah mengeklik nama kategori dahulu. Ini bermanfaat supaya tidak ada diklat dibuat tanpakategorisamasekali. 2) Sekarang saatnya membuat link Menambah Peserta pada view Training. Masuk ke folderviewdariTraininglalubukafileview.phptambahkankodedibawahini:
<?php $this->menu=array( array('label'=>'Daftarkan Peserta', 'url'=>array('participant/create','id'=>$model->idtraining )),); ?>

3) Ubahjugaviewdari_form.phpdariParticipant,hilangkanfieldTrainingidatauuntuk amannyauncheckdengan//
<?php //echo $form->labelEx($model,'trainingid'); ?> <?php //echo $form->textField($model,'trainingid'); ?> <?php //echo $form->error($model,'trainingid'); ?>?>

Perintah diatas tidak digunakan karena pada langkah sebelumnya kita telah mendefinisikan Diklat untuk setiap Peserta yang dipilih, selain itu kalau diaktifkan jugaakanterjadikonflikdualismeDiklat. 4) Dibagian view Training ini, selain bisa membuat training baru kita juga ingin menambahpesertakemasingmasing diklat.Buka TrainingController.phpaturscript padaactionViewmenjadisepertiberikut:
public function actionView($id) { $toparticipant=new Participant('search'); $toparticipant->unsetAttributes(); $toparticipant->trainingid=$id; $this->render('view',array( 'model'=>$this->loadModel($id), 'toparticipant'=>$toparticipant, )); }

5) Masuk ke folder view dari Training lalu buka file view.php, kita ingin menampilkan listing diklat yang dikategorikan per masingmasing training, tambahkan kode sebagaiberikut:
<?php $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'participant-grid', 'dataProvider'=>$toparticipant->search(), //'filter'=>$toparticipant, 'emptyText'=>'Belum ada Peserta yang mendaftar pada diklat ini', 'summaryText'=>'', 'columns'=>array( array( 'name'=>'No', 'type'=>'raw', 'value'=>'$data->idparticipant', ), array( 'name'=>'Nama Peserta', 'type'=>'raw', 'value'=>'Chtml::link($data>name_participant,array(\'participant/view\',\'id\'=>$data>idparticipant))',

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

10

),

array( 'name'=>'Jamlat', 'type'=>'raw', 'value'=>'$data->city',

), )));?>

Satu langkah lagi akan saya tambahkan yaitu tampilan dari Participant, buka folder view, participant,view.php 1. Breadcrumbsdariparticipant
$this->breadcrumbs=array( 'Participants'=>array('index'), $model->idparticipant, );

Ubahmenjadisepertiini
$this->breadcrumbs=array( 'Participants'=>array('index'), $model->name_participant, );

2. Ubahpulaoperationsdariparticipant
$this->menu=array( array('label'=>'List Participant', 'url'=>array('index')), array('label'=>'Create Participant', 'url'=>array('create')), array('label'=>'Update Participant', 'url'=>array('update', 'id'=>$model->idparticipant)), array('label'=>'Delete Participant', 'url'=>'#', 'linkOptions'=>array('submit'=>array('delete','id'=>$model>idparticipant),'confirm'=>'Are you sure you want to delete this item?')), array('label'=>'Manage Participant', 'url'=>array('admin')), );

Ubahmenjadisepertiini
$this->menu=array( array('label'=>'Ubah Peserta', 'url'=>array('update', 'id'=>$model->idparticipant)), array('label'=>'Hapus Peserta', 'url'=>'#', 'linkOptions'=>array('submit'=>array('delete','id'=>$model>idparticipant),'confirm'=>'Are you sure you want to delete this item?')), );

3. Kemudianubahpulatampilandaritulisanpesertadiklatdarimenjadi
<h1><?php echo $model->name_participant; ?></h1>

4. Datapesertajugainginkitaubah,darisepertiini
<?php $this->widget('zii.widgets.CDetailView', array( 'data'=>$model, 'attributes'=>array( 'idparticipant', 'name_participant', 'nip', 'city', 'trainingid', ), )); ?>

Menjadibegini
<?php $this->widget('zii.widgets.CDetailView', array( 'data'=>$model,

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

11

'attributes'=>array( 'name_participant', 'nip', 'city', ), )); ?>

Langkah berikutnya, anda bisa berkreasi sendiri tentunya. Misal dihalaman update ingin diubah, atau halaman Manage menurut anda perlu ditampilkan, halaman create ingin dimodif dll. Hal penting yang harus diperhatikan adalah bahwa, setiap halaman view adalah hasil representasi dari proses coding yang telah kita buat di controller, function actionView, actionadalahakanmenghasilkanview.php,actionCreateakanmenghasilkancreate.phpdst.

B. REFERENSI
http://www.yiiframework.com/doc/guide/1.1/id http://www.yiiframework.com/wiki/250/yiiforbeginners/

C. BIOGRAFI PENULIS
NininSaptoHargiyanto.MenyelesaikanDiplomadiSTAN,seorangFungsionalPranataKomputer di Kementerian Keuangan, Jakarta. Bidang peminatan di Ilmu Komputer adalah Web Development,NetworkingsertaLinux.

KomunitaseLearningIlmuKomputer.Com Copyright20082012IlmuKomputer.Com

12

Anda mungkin juga menyukai