Beranda · Contact Us · Downloads

Yii: Menampilkan data hasil query ke dalam tabel

 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>&nbsp;&nbsp;','#', 
        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!

Artikel keren lainnya: