Advertisement
Guest User

menjumlah

a guest
May 28th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.87 KB | None | 0 0
  1.  
  2. <?php
  3.     //-- konfigurasi koneksi database
  4.     $dbhost='localhost';
  5.     $dbuser='root';
  6.     $dbpass='';
  7.     $dbname='metode_mfep';
  8.     //-- connect to database
  9.     $db=new mysqli($dbhost,$dbuser,$dbpass,$dbname);
  10.     //-- query data ke database
  11.     $sql="SELECT nama_siswa,nama_mp,nilai_akd,nilai_non_akd,sikap FROM view_rekap_nilai WHERE kode_rombel='2'&&kode_nilai='3'&&semester='1'";
  12.     //-- inisialisasi variabel penampung
  13.     $record=array();
  14.     $data=array();
  15.     $nama_siswa=array();
  16.     $nama_mp=array();
  17.     //-- menjalankan query ke database
  18.     if($result=$db->query($sql)){
  19.         //-- ambil data dan masukkan ke variabel penampung
  20.         while($row=$result->fetch_object()){
  21.             //-- copy data record ke variable $record utk table tanpa pivot  
  22.             $record[]=$row;
  23.             //-- penyiapan data untuk pivot table
  24.             if(isset($data[$row->nama_siswa])){
  25.                 if(isset($data[$row->nama_siswa][$row->nama_mp])){
  26.                     $data[$row->nama_siswa][$row->nama_mp][0]+=$row->nilai_akd;
  27.                     $data[$row->nama_siswa][$row->nama_mp][1]+=$row->nilai_non_akd;
  28.                     //$data[$row->nama_siswa][$row->nama_mp][2]+=$row->sikap;
  29.                 }else{
  30.                     $data[$row->nama_siswa][$row->nama_mp]=array($row->nilai_akd,$row->nilai_non_akd,$row);
  31.                     $nama_mp[]=$row->nama_mp;
  32.                 }
  33.             }else{
  34.                 $data[$row->nama_siswa]=array();
  35.                 $nama_siswa[]=$row->nama_siswa;
  36.                 $data[$row->nama_siswa][$row->nama_mp]=array($row->nilai_akd,$row->nilai_non_akd,$row);
  37.                 $nama_mp[]=$row->nama_mp;
  38.             }
  39.         }
  40.         $result->close();
  41.     }
  42.  
  43.     $db->close();
  44.     $nama_mp=array_unique($nama_mp);
  45.     //======= Table Data sebelum di Pivot  ========
  46.     echo "<h2>Tabel Biasa</h2>";
  47.     echo "<table border='1'>"
  48.             ."<thead>"
  49.                 ."<th>Nama Siswa</th>"
  50.                 ."<th>Nama MP</th>"
  51.                 ."<th>Nilai Akademik</th>"
  52.                 ."<th>Nilai Non Akademik</th>"
  53.                 ."<th>Total</th>"
  54.             ."</thead>";
  55.         for($i=0;$i<count($record);$i++){
  56.         echo "<tbody>"
  57.                 ."<tr align='center'>"
  58.                     ."<td align='left'>".$record[$i]->nama_siswa."</td>"
  59.                     ."<td align='left'>".$record[$i]->nama_mp."</td>"
  60.                     ."<td>".$record[$i]->nilai_akd."</td>"
  61.                     ."<td>".$record[$i]->nilai_non_akd."</td>"
  62.                     ."<td></td>"
  63.                 ."</tr>"
  64.             ."</tbody>";
  65.         }
  66.     echo "</table><br>";
  67.  
  68.     //======= Table Data sesudah di Pivot  ========
  69.     echo "<h2>Tabel Pivot</h2>";
  70.     echo "<table border='1'>"
  71.             ."<thead align='center'>"
  72.                 ."<th rowspan='2'>Nama Siswa</th>";
  73.             for($i=0;$i<count($nama_mp);$i++){
  74.             echo "<th colspan='2'>".$nama_mp[$i]."</th>";
  75.             }
  76.             echo "<th rowspan='2'>Total</th></tr><tr>";
  77.             for($i=0;$i<count($nama_mp);$i++){
  78.             echo "<th>P</th><th>K</th>";
  79.             }
  80.         echo "</thead>"
  81.             ."<tbody align='center'>";
  82.             for($i=0;$i<count($nama_siswa);$i++){
  83.             echo "<tr>"
  84.                     ."<td align='left'>".$nama_siswa[$i]."</td>";
  85.                     $sikap=0;    
  86.                     for($j=0;$j<count($nama_mp);$j++){
  87.                     echo (isset($data[$nama_siswa[$i]][$nama_mp[$j]])?"<td>".$data[$nama_siswa[$i]][$nama_mp[$j]][0]."</td>"
  88.                     ."<td>".$data[$nama_siswa[$i]][$nama_mp[$j]][1]."</td>":"<td>0</td><td>0</td>");
  89.                     //$sikap+=(isset($data[$nama_siswa[$i]][$nama_mp[$j]])?$data[$nama_siswa[$i]][$nama_mp[$j]][2]:0);
  90.                     }
  91.                     echo "<td></td></tr>";
  92.             }
  93.         echo "</tbody>"
  94.         ."<table>";
  95. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement