Pada artikel sebelumnya kita telah membahas mengenai Programming Multiple Checkbox pada PHP, dan kita mungkin bisa juga melakukan hal ini dalam framework Yii.
- Misal kita ingin membuat seperti di bawah ini:
Pemrograman di atas adalah seperti berikut ini:
———————————————————————-
<script>
function cetak()
{
document.dataku.action=”index.php?r=prospecting/kota/cetak”;
document.dataku.submit();
}
</script>
<br/><br/>
<form method=”POST” name=”dataku”>
<input type=”button” value=”Cetak” onClick=cetak()>
<?php $this->widget(‘zii.widgets.grid.CGridView’, array(
‘id’=>’kota-grid’,
‘dataProvider’=>$model->search(),
‘filter’=>$model,
‘columns’=>array(
array(
‘header’=>”,
‘value’=>’CHtml::checkBox(“daftarku[]”,false,array(“value”=>$data->kota_id))’,
‘type’=>’raw’,
),
array(
‘header’=>’ID’,
‘value’=>’$data->kota_id’,
),
‘nama’,
‘propinsi’,
/* array(
‘class’=>’CButtonColumn’,
),
*/
),
)); ?>
</form>
———————————————————————-Pertama-tama kita tambahkan form:
<form method=”POST” name=”dataku”>Kemudian kita membuat chekbox ke dalam input daftarku[] dan nilainya adalah kota_id dengan source code:
———————————————————————-
‘columns’=>array(
array(
‘header’=>”,
‘value’=>’CHtml::checkBox(“daftarku[]”,false,array(“value”=>$data->kota_id))’,
‘type’=>’raw’,
),
———————————————————————-Kemudian kita membuat button cetak dan pada saat diklik akan menjalankan fungsi cetak. Fungsi cetak itu sendiri adalah mengarahkan ke action yang sesuai dengan source code seperti berikut ini:
———————————————————————-
<script>
function cetak()
{
document.dataku.action=”index.php?r=prospecting/kota/cetak”;
document.dataku.submit();
}
</script>
———————————————————————-
- Kemudian saat klik cetak maka tampilannya adalah :
Coding pada KotaControllernya.php adalah:
———————————————————————-
public function accessRules()
{
return array(
array(‘allow’, // allow all users to perform ‘index’ and ‘view’ actions
‘actions’=>array(‘index’,’view’,’cetak’),
‘users’=>array(‘*’),
),
———————————————————————-
Coding di atas untuk memperbolehkan action cetak.Kemudian pada KotaController.php misalnya seperti berikut ini
———————————————————————-
public function actionCetak()
{
echo “<strong>Hasil dari print_r:</strong>
<pre>”;
print_r($_POST[‘daftarku’]);
echo “</pre>”;echo “<br/><br/><strong>Hasil dari for each:</strong><br/>”;
$daftarku=$_POST[‘daftarku’];
foreach ($daftarku as $nomor=>$nilai)
{
echo “<br/>Nomor $nomor isinya $nilai”;
}
}
———————————————————————-
Contoh source di atas hanya menunjukkan bahwa nilai sudah masuk dengan baik.
Artikel terkait adalah:
1. http://www.proweb.co.id/articles/web_application/multiple_checbox.html .
2. http://www.proweb.co.id/articles/web_application/check_all_checkbox.html .
Informasi lebih lanjut silahkan mengunjungi :
1. http://www.yiiframework.com/forum/index.php/topic/7140-can-i-add-a-checkbox-on-per-row-in-the-cgridview/ .
2. http://www.yiiframework.com/doc/api/1.1/CGridView .
3. http://www.yiiframework.com/doc/api/1.1/CHtml#checkBox-detail
Kunjungi www.proweb.co.id untuk menambah wawasan anda.