Berita

Menfilter Tabel menggunakan methode Yii::app()->createUrl(.....)

11 tahun yang lalu

(oleh : Badiyanto)

Aplikasi web untuk menampikan informasi tertentu ada yang dengan cara mengklik salah satu rekaman yang ditampilkan dalam tabel. Jika rekaman tersebut di Link dan mengirimkan nilai kunci, maka hasilnya akan ditampilkan sesuai dengan nilai kunci yang sama saja. Contoh kasus ada tabel daftar pengarang, ketika diklik akan menampilkan buku yang dikarangn saja

Ketikan baris peertama di klik maka akan menampilkan

Untuk itu yang dilakukan dengan mengubah file /views/tblPengarang/index.php

<?php
/* @var $this TblPengarangController */
/* @var $model TblPengarang */

$this->breadcrumbs=array(
    'Tbl Pengarangs'=>array('index'),
    'Manage',
);

$this->menu=array(
    array('label'=>'List TblPengarang', 'url'=>array('index')),
    array('label'=>'Create TblPengarang', 'url'=>array('create')),
);

Yii::app()->clientScript->registerScript('search', "
$('.search-button').click(function(){
    $('.search-form').toggle();
    return false;
});
$('.search-form form').submit(function(){
    $.fn.yiiGridView.update('tbl-pengarang-grid', {
        data: $(this).serialize()
    });
    return false;
});
");
?>

<h1>Manage Tbl Pengarangs</h1>

<p>
You may optionally enter a comparison operator (<b>&lt;</b>, <b>&lt;=</b>, <b>&gt;</b>, <b>&gt;=</b>, <b>&lt;&gt;</b>
or <b>=</b>) at the beginning of each of your search values to specify how the comparison should be done.
</p>

<?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>
<div class="search-form" style="display:none">
<?php $this->renderPartial('_search',array(
    'model'=>$model,
)); ?>
</div><!-- search-form -->

<?php $this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'tbl-pengarang-grid',
    'dataProvider'=>$model->search(),
    'filter'=>$model,
    'columns'=>array(
        array(
            'name'=>'id',
            'type'=>'raw',
            'value'=>'CHtml::link(CHtml::encode($data->id),$data->bukuUrl)',
            'htmlOptions'=>array('width'=>'3%'),
        ),
        array(
            'name'=>'nama_pengarang',
            'type'=>'raw',
            'value'=>'CHtml::link(CHtml::encode($data->nama_pengarang),$data->bukuUrl)',
            'htmlOptions'=>array('width'=>'50%'),
        ),
        'alamat',
        'jenin_kelamin',
    array(
            'class'=>'CButtonColumn',
        ),
    ),
)); ?>

Kemudian tambahan fungsi untuk mengarahkan link Url pada model/kelas TblPengarang.php

public function getBukuUrl()
    {
        return Yii::app()->createUrl('/tblBuku/daftarBuku2',array(
            'id'=>$this->id,
        ));
    }


perintah : Yii::app()->createUrl('/tblBuku/daftarBuku2(... ketika link diklik makan akan memanggil tampilan view daftarBuku2.php dan
array( 'id'=>$this->id,)) adalah menyertakan variabel $id/nilai kunci primer di tabel pengarang.

mengujinya dengan memanggil http://localhost/coba/index.php?r=tblPengarang/admin, kemudian untuk  File daftarBuku2.php sama dengan dan model TblBuku.php


Berita Lainnya

PENGUMUMAN PKL
PRODI TEKNIK INFORMATIKA & SISTEM INFORMASI
SEMESTER GENAP T.A. 2016/2017
PENGUMUMAN PKL PRODI TEKNIK INFORMATIKA & SISTEM INFORMASI SEMESTER GENAP T.A. 2016/2017

7 tahun yang lalu

Dengan ini diumumkan : Hasil verifikasi mahasiswa yang mengambil matakuliah Praktik Kerja Lapangan Semester Genap T.A. 2016/2017 dapat di cek di ...

Selengkapnya
AKAKOM Juara 2 Dinacom Competition 2017
AKAKOM Juara 2 Dinacom Competition 2017

7 tahun yang lalu

Minggu, 26 Februari 2017 STMIK AKAKOM Yogyakarta menjadi finalis di Dinacom Competition 2017 kategori mahasiswa. Kompetisi ini dilaksanakan di Universitas Dian Nuswantoro Kota ...

Selengkapnya
HMJ Manajemen Informatika adakan pelatihan di SMK Nasional Berbah
HMJ Manajemen Informatika adakan pelatihan di SMK Nasional Berbah

7 tahun yang lalu

Sabtu, [25/02] Himpunan Mahasiswa Jurusan Manajemen Informatika / HMJ MI  Melaksanakan salah satu program kerja berupa pelatihan di SMK Nasional Berbah ...

Selengkapnya