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

Penandatangan Kerjasama STMIK AKAKOM dengan Asosiasi Cloud Computing Indonesia
Penandatangan Kerjasama STMIK AKAKOM dengan Asosiasi Cloud Computing Indonesia

6 tahun yang lalu

ACCI yang mempunyai kepanjangan Asosiasi Cloud Computing Indonesia adalah sebuah organisasi non-profit yang  diharapkan akan mampu menselaraskan perkembangan teknologi ...

Selengkapnya
Penandatanganan Kerjasama Peneliti STMIK AKAKOM dengan Dinas Pariwisata Kabupaten Bantul
Penandatanganan Kerjasama Peneliti STMIK AKAKOM dengan Dinas Pariwisata Kabupaten Bantul

6 tahun yang lalu

Aplikasi SIMISKIN merupakan hasil penelitian dosen-dosen STMIK AKAKOM dengan pendanaan dari Hibah Bersaing RISTEK DIKTI selama 3 tahun (2015-2017). Penelitian ini ...

Selengkapnya
Launching Aplikasi SIMISKIN untuk Kabupaten Bantul
Launching Aplikasi SIMISKIN untuk Kabupaten Bantul

6 tahun yang lalu

Pada tgl 11 Mei 2018 salah satu hasil karya penelitian dosen-dosen STMIK AKAKOM Yogyakarta dengan nama SIMISKIN telah dilaunching oleh Asisten Bidang ...

Selengkapnya