Advertisement
Guest User

Total Nilai

a guest
May 28th, 2017
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.17 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>Pengetahuan</th>"
  52.                 ."<th>Keteranpilan</th>"
  53.             ."</thead>";
  54.         for($i=0;$i<count($record);$i++){
  55.         echo "<tbody>"
  56.                 ."<tr align='center'>"
  57.                     ."<td align='left'>".$record[$i]->nama_siswa."</td>"
  58.                     ."<td align='left'>".$record[$i]->nama_mp."</td>"
  59.                     ."<td>".$record[$i]->nilai_akd."</td>"
  60.                     ."<td>".$record[$i]->nilai_non_akd."</td>"
  61.                 ."</tr>";
  62.                 }
  63.             echo "<tr align='center'>"
  64.                     ."<td align='left' colspan='2'>Total</td>"
  65.                     ."<td>Total?</td>"
  66.                     ."<td>Total?</td>"
  67.                 ."</tr>"
  68.             ."</tbody>";
  69.     echo "</table><br>";
  70.  
  71.     //======= Table Data sesudah di Pivot  ========
  72.     echo "<h2>Tabel Pivot</h2>";
  73.     echo "<table border='1'>"
  74.             ."<thead align='center'>"
  75.                 ."<th rowspan='2'>Nama Siswa</th>";
  76.             for($i=0;$i<count($nama_mp);$i++){
  77.             echo "<th colspan='2'>".$nama_mp[$i]."</th>";
  78.             }
  79.             echo "<th colspan='2'>Total</th>";
  80.             echo "<th rowspan='2'>Total P & K</th></tr><tr>";
  81.             for($i=0;$i<count($nama_mp);$i++){
  82.             echo "<th>P</th><th>K</th>";
  83.             }
  84.             echo "<th>P</th><th>K</th>";
  85.         echo "</thead>"
  86.             ."<tbody align='center'>";
  87.             for($i=0;$i<count($nama_siswa);$i++){
  88.             echo "<tr>"
  89.                     ."<td align='left'>".$nama_siswa[$i]."</td>";
  90.                     $sikap=0;    
  91.                     for($j=0;$j<count($nama_mp);$j++){
  92.                     echo (isset($data[$nama_siswa[$i]][$nama_mp[$j]])?"<td>".$data[$nama_siswa[$i]][$nama_mp[$j]][0]."</td>"
  93.                     ."<td>".$data[$nama_siswa[$i]][$nama_mp[$j]][1]."</td>":"<td>0</td><td>0</td>");
  94.                     //$sikap+=(isset($data[$nama_siswa[$i]][$nama_mp[$j]])?$data[$nama_siswa[$i]][$nama_mp[$j]][2]:0);
  95.                     }
  96.                     echo "<td>Total?</td><td>Total?</td>";
  97.                     echo "<td>Total?</td></tr>";
  98.             }
  99.         echo "</tbody>"
  100.         ."<table>";
  101. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement