Bagaimana caranya menampilkan data hasil query ke dalam tabel?
Berikut saya akan memberikan contoh kecil bagaimana caranya menampilkan data hasil dari sebuah query ke dalam tabel di Yii. Yang pertama disiapkan adalah ketersediaan data yang akan ditampilkan ke dalam tabel. Di sini saya memanfaatkan CSqlDataProvider untuk menarik data.
Berikut data yang saya siapkan :
<?php $kd_service= $model->kd_service; $detail= new CSqlDataProvider( "select d.kd_barang,d.qty,d.kd_dservice, b.nama_barang,b.merek,b.harga, (b.harga*d.qty) as subtotal from dservice d, barang b where d.kd_barang=b.kd_barang and kd_service = '".$kd_service."'"); $details= $detail->getData(); ?>
Setelah datanya siap, langkah selanjutnya menyiapkan kolom dimana data akan ditampilkan. Perhatikan script sederhana di bawah ini :
Membuat kerangka tabel <table class="table table-striped table-hover table-bordered table-condensed"> <thead> <tr> <th width=40px></th> <th>No</th> <th>Kode Barang</th> <th>Nama Barang</th> <th class="text-center">Qty</th> <th class="text-right">Harga</th> <th class="text-right">Subtotal</th> </tr> </thead> <tbody>
Menampilkan data ke dalam array
<?php
$total=0;
$no=0;
for ($i=0; $i<count($details); $i++){
$no++;
echo '<tr>
<td>'
//menampilkan tombol update & delete
.CHtml::link('<i class="fa fa-trash-o"></i> ','#',
array('submit'=>array('dservice/delete','id'=>$details[$i]['kd_dservice']),
'confirm'=>'Are you sure to delete this item?','status'=>'a')).
CHtml::link('<i class="fa fa-pencil"></i>','#',
array('submit'=>array('dservice/update','id'=>$details[$i]['kd_dservice']),
)).
'</td>
<td>'.$no.'</td>
<td>'.$details[$i]['kd_barang'].'</td>
<td>'.$details[$i]['nama_barang'].'</td>
<td class=text-center>'.$details[$i]['qty'].'</td>
<td class=text-right> Rp '.$details[$i]['harga'].'</td>
<td class=text-right>Rp '.$details[$i]['subtotal'].'</td>
</tr>
';
//menghitung nilai subtotal
$total=$total+$details[$i]['subtotal'];
}
?>
menampilkan bagian bawah tabel <tr> <td colspan=5> <th>Total</th> </td> <th class="text-right"> <?php echo 'Rp '.$total; ?></th> </tr> <tr> <td colspan=5> <th>Biaya Service</th> </td> <th class="text-right"> <?php echo 'Rp '.$model->biaya_service ; ?></th> </tr> <tr> <td colspan=5> <th>Grand Total</th> </td> <th class="text-right"> <?php $grandtotal= $model->biaya_service + $total ; echo 'Rp '.$grandtotal ;?></th> </tr> </table>
Silahkan salin semua kode di atas dan simpan di sebagai views/namamodel/view.php
Good Luck!
