Senin, 23 Januari 2023

Rekap Data %Y%M

 <div align="RiGHT">
<h3>
<a href="?mnu=analisa">Per Barang</a> | 
<a href="?mnu=analisa2">Per Waktu %Y%M</a>
</h3>
</div>

<?php
$sql0 = "SELECT * from `tb_barang` order by id_barang asc";
$no = 1;
$arr0 = getData($conn, $sql0);
foreach ($arr0 as $d0) {
  $id_barang = $d0["id_barang"];
  $nama_barang = $d0["nama_barang"];
  
 $sql = "select `$tbpo`.`id_po`,`$tbpo`.`tanggal` ,`$tbdetail`.`jumlah_karton` from `$tbpo`,`$tbdetail` 
where `$tbpo`.id_po=`$tbdetail`.id_po
and `$tbdetail`.id_barang='$id_barang'
order by `$tbpo`.`tanggal` asc";
$tot=0;
$jum = getJum($conn, $sql);
$gab="<b>$nama_barang ($id_barang)</b><ol>";
if ($jum > 0) {
$no = 1;
$arr = getData($conn, $sql);
foreach ($arr as $d) {
$id_po = $d["id_po"];
$tanggal = $d["tanggal"]; 
$jumlah_karton = $d["jumlah_karton"]; 
$tot+=$jumlah_karton;
$gab.="<li><a href='?mnu=detail&id=$id_po'>$id_po</a> $tanggal : <b>$jumlah_karton</b></li>";
}
$gab.="</ol><b>Total $tot</b><br>";
echo $gab;

}//jum

}



==================================
<div align="RiGHT">
<h3>
<a href="?mnu=analisa">Per Barang</a> | 
<a href="?mnu=analisa2">Per Waktu %Y%M</a>
</h3>
</div>

<?php
$no = 1;
$tot=0;
$sql0 = "SELECT distinct(`id_barang`) from `$tbdetail` order by id_barang asc";
$arr0 = getData($conn, $sql0);
foreach ($arr0 as $d0) {
  $id_barang = $d0["id_barang"];
  $nama_barang = getBarang($conn,$id_barang);
  
  $gab="<b>$no. $nama_barang ($id_barang)</b><ol>";
$sql00 = "SELECT `tb_po`.`tanggal` from 
`tb_po`,`$tbdetail` 
where
`tb_po`.id_po=`$tbdetail`.id_po
and
`$tbdetail`.id_barang='$id_barang'
GROUP BY DATE_FORMAT(`tb_po`.tanggal, '%Y%m') order by `tb_po`.tanggal asc";
$arr00 = getData($conn, $sql00);
foreach ($arr00 as $d00) {
  $tanggal = $d00["tanggal"]; 
  $TGL=setBul($tanggal);
  $ar=explode("-",$tanggal);
$bln=$ar[1];
$thn=$ar[0];

  $per1="$thn-$bln-01";
  $per2="$thn-$bln-31";
 
   $sql = "select sum(`$tbdetail`.`jumlah_karton`) as `subjumlah` from `$tbpo`,`$tbdetail` 
where `$tbpo`.id_po=`$tbdetail`.id_po
and  (`$tbpo`.tanggal between '$per1' and '$per2')
and `$tbdetail`.id_barang='$id_barang'
order by `$tbpo`.`tanggal` asc"; 

$jum = getJum($conn, $sql);
if ($jum > 0) {
$no = 1;
$d = getField($conn, $sql);
$subjumlah = $d["subjumlah"]+0; 
$tot+=$subjumlah;
$gab.="<li><a href='?mnu=po2&tgl=$tanggal&id_barang=$id_barang'>Periode $TGL</a>:<b>$subjumlah</b></li>";
}//jum
}//distinct Bulan thn
$gab.="</ol>Total $tot Item<br>";
echo $gab;
$no++;
}



============
<?php
//error_reporting(0);

?>

<script type="text/javascript">
function PRINT() {
win = window.open('po/po_print.php', 'win', 'width=1000, height=400, menubar=0, scrollbars=1, resizable=0, location=0, toolbar=0, status=0');
}
</script>
 
 <?php
 
 $tanggal = $_GET["tgl"]; 
 $id_barang= $_GET["id_barang"]; 
 
  $TGL=setBul($tanggal);
  $ar=explode("-",$tanggal);
$bln=$ar[1];
$thn=$ar[0];

  $per1="$thn-$bln-01";
  $per2="$thn-$bln-31";
  $w1=WKT($per1);
  $w2=WKT($per2);
  $NB=getBarang($conn,$id_barang);
  ?>

<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-body">
<h6>Rekapitulasi <?php echo $TGL;?></h6>
<hr> 
<div class="row">
<div class="col-md-6">
<label for="id_po">Nama Barang</label>
<input type="text" class="form-control" required name="id_po" id="id_po" value="<?php echo $NB; ?>" readonly>
</div>
<div class="col-md-6">
<label for="id_pelanggan">ID Barang</label>
<input type="text" class="form-control" required name="id_po" id="id_po" value="<?php echo $id_barang; ?>" readonly>
</div>
</div>
<div class="row">
<div class="col-md-12"><br>
<label for="status">Periode</label><br>
<input type="text" class="form-control" required name="id_po" id="id_po" value="<?php echo "$w1 s/d $w2"; ?>" readonly>
</div>
</div>
 
</div>
</div>
</div>
</div> 
 
<hr>

<div class="card mb-4">
<div class="card-header">
<i class="fas fa-table me-1"></i>
Data PO :| <img src='ypathicon/print.png' title='PRINT' OnClick="PRINT()"> |
</div>
<div class="card-body">
<table class="table table-striped" id="myTable">
<thead>
<tr>
<th width="3%">No</td>
<th width="80%">Data Order</th>
<th width="15%">Status</th>
</tr>
</thead>
<tbody>
<?php
$tot=0;
$sql = "select  `$tbpo`.id_po,`$tbpo`.tanggal,`$tbpo`.id_pelanggan,`$tbpo`.status  from `$tbpo` 
where  (`$tbpo`.tanggal between '$per1' and '$per2')
order by `$tbpo`.`tanggal` asc";  
$no = 1;
$arr = getData($conn, $sql);
foreach ($arr as $d) {
$stot=0;
$id_po = $d["id_po"]; 
$tanggal_po = WKT($d["tanggal"]);
$id_pelanggan = $d["id_pelanggan"];
$NP=getPelanggan($conn,$id_pelanggan);
$status= $d["status"];


$sqlv = "select id_barang,jumlah_karton,jumlah_pcs from `$tbdetail` where id_po='$id_po' and `id_barang`='$id_barang' order by `id_detail` desc";
if(getJum($conn,$sqlv)>0){
$gab = "<ul>";
$arrv = getData($conn, $sqlv);
foreach ($arrv as $dv) { 
$jumlah_karton = $dv["jumlah_karton"];
$jumlah_pcs = $dv["jumlah_pcs"];
$id_barang = $dv["id_barang"];
$stot+=$jumlah_karton;
$tot+=$jumlah_karton;
$gab .= "<li><small>$id_barang |$NB</small> : <label title='PCS: $jumlah_pcs'>$jumlah_karton Item</label</li>";
}
$gab .= "</ul>";
 
echo "<tr>
                <td>$no</td>
<td><b>$id_po ($tanggal_po)#$NP|$id_pelanggan  </b>
    <br>$gab
</td>
<td align='center'>$stot /$tot<br><br><br>$status</td>
</tr>";

$no++; 
}//jumv
}  
 
?>
</tbody>
</table>
<?php
echo "<big>Total Transaksi $NB : $tot Item</big>";
?>
</div>
</div>
 




<div align="RiGHT">
<h3>
<a href="?mnu=nb">Algoritma NB</a> | 
<a href="?mnu=svm">Algoritma SVM</a>
</h3>
</div>
<hr>

<?php


  $sql = "select * from `$tbpengujian` order by  `id_pengujian` desc";

    if(isset($_GET["id"])){
  $id_pengujian=$_GET["id"];
  $sql = "select * from `$tbpengujian` where id_pengujian='$id_pengujian'";
  } 
  $d = getField($conn, $sql);
  $id_pengujian = $d["id_pengujian"]; 
  $tanggal = WKT($d["tanggal"]);
  $jam = $d["jam"];
  $id_barang = $d["id_barang"];
  $nama_pengujian = $d["nama_pengujian"];
  $group = $d["group"];
  $durasi = $d["durasi"]; 
  
  $sql = "select * from `$tbbarang` where `id_barang`='$id_barang'";
  $d = getField($conn, $sql);
  $nama_barang = $d["nama_barang"];
  $deskripsi = $d["deskripsi"];
  $gambar = $d["gambar"];
  $harga = $d["harga"];
  $satuan = $d["satuan"];
  $pcs = $d["pcs"];
  $berat = $d["berat"];
  $ukuran = $d["ukuran"]; 
  
  $arJ=array();
$i=0;
        $sql = "SELECT `jumlah` from `tb_normalisasi` where `id_pengujian`='$id_pengujian'  order by id_norm asc";
            $arr = getData($conn, $sql);
   foreach ($arr as $d) {
              $jumlah = $d["jumlah"];
  $arJ[$i]=$jumlah;
  $i++;
}
$max=max($arJ);
$min=min($arJ);
$ARL=setLevel($min,$max,$group);
?>

    <div class="row">
      <div class="col-md-12">
        <div class="card">
          <div class="card-body">
            <h6>Data Pengujian UJI:<?php echo $id_pengujian;?></h6>
            <hr>

<div class="row">
<div class="col-md-3">
<label for="id_barang">ID Pengujian</label>
<input type="text" class="form-control" required name="id_pengujian0" id="id_pengujian0" value="UJI:<?php echo $id_pengujian; ?>" readonly>
</div>
<div class="col-md-9">
<label for="nama_barang">Nama Pengujian</label>
<input type="text" class="form-control" required name="nama_pengujian" readonly id="nama_pengujian" value="<?php echo $nama_pengujian; ?>" placeholder="">
</div>
</div> 

<div class="row">
<div class="col-md-3">
<label for="id_barang">ID Barang</label>
<input type="text" class="form-control" required name="id_barang" id="id_barang" value="<?php echo $id_barang; ?>" readonly>
</div>
<div class="col-md-9">
<label for="nama_barang">Nama Barang</label>
<input type="text" class="form-control" required name="nama_barang" id="nama_barang" value="<?php echo $nama_barang; ?>" readonly placeholder="">
</div>
</div> 
 


<div class="row">
<div class="col-md-3">
<label for="id_barang">Group Pengujian</label>
<input type="text" class="form-control" required name="group" id="group" value="<?php echo $group; ?> Level" readonly placeholder="">
</div>
<div class="col-md-9">
<label for="nama_barang">Lama Prediksi</label>
<input type="text" class="form-control" required name="durasi" id="durasi" value="<?php echo $durasi; ?> Bulan Yang Akan Datang" readonly>
</div>
</div> 



<div class="row">
<div class="col-md-12">

<table class="table table-striped" id="myTable">
        <thead>
          <tr>
            <th width="3%">No</td>
            <th width="15%">Periode</td>
            <th width="7%">Jumlah</td>
            <th width="7%">Level</td>
          </tr>
        </thead>
        <tbody>
          <?php
  $arP=array();
          $sql = "SELECT * from `tb_normalisasi` where `id_pengujian`='$id_pengujian' order by id_norm asc";
          $jum = getJum($conn, $sql);
          if ($jum > 0) {
            $no = 1;
            $arr = getData($conn, $sql);
            foreach ($arr as $d) {
              $id_barang = $d["id_barang"];
              $jumlah = $d["jumlah"];
              $periode = $d["periode"];
              $keterangan = $d["keterangan"];
  $id_norm = $d["id_norm"];
  $level=getLevel($ARL,$jumlah);
  $i=$no-1;
  $arP[$i]=$level;
    $sqlUP = "UPDATE `tb_normalisasi` set `level`='$level' where `id_norm`='$id_norm'";
process($conn, $sqlUP);
  
              echo "<tr>
<td>$no</td> 
<td>$periode</td>
<td>$jumlah</td>
<td>$level</td></tr>
                    ";
              $no++;
            } //for dalam
          } //if
          else {
            echo "<tr><td colspan='6'><blink>Maaf, Data Normalisasi belum tersedia...</blink></td></tr>";
          }
          ?>
        </tbody>
      </table></div> </div> 

<?php
$jiter=$i-$group;
$gab="<h3>Dataset @$group Item</h3><ol>";
$arUji=array();
$gabUji="<h3>Dataset @$group Item</h3><ol>";
for($i=0;$i<=$jiter;$i++){
$gab.="<li>";
for($j=$i;$j<$group+$i;$j++){
$gab.=$arP[$j]."|";
}
$gab.=" = ".$arP[$i+$group]."</li>";
}
$gab.="</ol>";

echo $gab;

$gab="<h3>Prediksi $durasi Bulan YAD</h3>";
$arN=setINC($periode, $durasi);
for($i=0;$i<count($arN);$i++){
$gab.="$i.".$arN[$i]."<br>";
}
echo $gab;
?>   
</div> 
</div> 
</div> 
</div> 





Dynamic Algoritma


Reff: https://developers-dot-devsite-v2-prod.appspot.com/chart/interactive/docs/gallery/piechart.html

<link type="text/css" href="<?php echo "$PATH/base/";?>ui.all.css" rel="stylesheet" />   
<script type="text/javascript" src="<?php echo "$PATH/";?>jquery-1.3.2.js"></script>
<script type="text/javascript" src="<?php echo "$PATH/";?>ui/ui.core.js"></script>
<script type="text/javascript" src="<?php echo "$PATH/";?>ui/ui.datepicker.js"></script>
<script type="text/javascript" src="<?php echo "$PATH/";?>ui/i18n/ui.datepicker-id.js"></script>
    
  <script type="text/javascript"> 
      $(document).ready(function(){
        $("#tanggal").datepicker({
dateFormat  : "dd MM yy",        
          changeMonth : true,
          changeYear  : true
        });
      });
    </script>     

 <?php
require_once "koneksivar.php";

$conn = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
if ($conn->connect_error) {
trigger_error('Database connection failed: '  . $conn->connect_error, E_USER_ERROR);
}


<?php 
function setLevel($min,$max, $durasi){
$margin=floor(($max-$min)/$durasi);
$ar=array();
for($i=1;$i<=$durasi;$i++){
$ar[$i-1]=$min+($margin*$i);
}
return $ar;
}
function getLevel($ar, $v){
$L=-1;
for($i=0;$i<count($ar);$i++){
if($v<=$ar[$i]){
$L=$i+1;
break;
}
}
return $L;
}

function setINC($last, $durasi){
$judul_bln = array(1 => "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");

  $arr=explode(" ",$last);
$bln=$arr[0];
$thn=$arr[1];
if ($arr[0] == "Januari" || $arr[0] == "January") {
$bul = 1;
} else if ($arr[0] == "Februari" || $arr[0] == "February") {
$bul = 2;
} else if ($arr[0] == "Maret" || $arr[0] == "March") {
$bul = 3;
} else if ($arr[0] == "April") {
$bul = 4;
} else if ($arr[0] == "Mei" || $arr[0] == "May") {
$bul = 5;
} else if ($arr[0] == "Juni" || $arr[0] == "June") {
$bul = 6;
} else if ($arr[0] == "Juli" || $arr[0] == "July") {
$bul = 7;
} else if ($arr[0] == "Agustus" || $arr[0] == "August") {
$bul = 8;
} else if ($arr[0] == "September") {
$bul = 9;
} else if ($arr[0] == "Oktober" || $arr[0] == "October") {
$bul = 10;
} else if ($arr[0] == "November" || $arr[0] == "Nopember") {
$bul = 11;
} else if ($arr[0] == "Desember" || $arr[0] == "December") {
$bul = 12;
}

$ar=array();
$pengali=1;
for($i=1;$i<=$durasi;$i++){
$bul=$bul+1;
if($bul>(12)){$bul=1;$thn++;}

$bulan=$judul_bln[$bul];
$TGL=$bulan." ".$thn;
$ar[$i-1]=$TGL;
}
return $ar;
}


function setBul($tanggal){
$judul_bln = array(1 => "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");
$ar=explode("-",$tanggal);
$bln=$ar[1];
$thn=$ar[0];
$bulan=$judul_bln[$bln+0];
$TGL=$bulan." ".$thn;
return $TGL; //Januari 2023
}


function WKT($sekarang){

if ($sekarang == "0000-00-00") {
$sekarang = date("Y-m-d");
}

$tanggal = substr($sekarang, 8, 2) + 0;
$bulan = substr($sekarang, 5, 2);
$tahun = substr($sekarang, 0, 4);

$judul_bln = array(1 => "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");
$wk = $tanggal . " " . $judul_bln[(int)$bulan] . " " . $tahun;
return $wk;
}
?>

function terbilang($i){
$huruf = array("", "Satu", "Dua", "Tiga", "Empat", "Lima", "Enam", "Tujuh", "Delapan", "Sembilan", "Sepuluh", "Sebelas");

if ($i < 12) return " " . $huruf[$i];
elseif ($i < 20) return terbilang($i - 10) . " Belas";
elseif ($i < 100) return terbilang($i / 10) . " Puluh" . terbilang($i % 10);
elseif ($i < 200) return " Seratus" . terbilang($i - 100);
elseif ($i < 1000) return terbilang($i / 100) . " Ratus" . terbilang($i % 100);
elseif ($i < 2000) return " Seribu" . terbilang($i - 1000);
elseif ($i < 1000000) return terbilang($i / 1000) . " Ribu" . terbilang($i % 1000);
elseif ($i < 1000000000) return terbilang($i / 1000000) . " Juta" . terbilang($i % 1000000);
}
 


function getList($conn, $kode){

$gab = "";
$sqlv = "select * from `tb_detail` where id_po='$kode' order by `id_detail` asc";
$jumv = getJum($conn, $sqlv);
if ($jumv > 0) {
$tot = 0;
$arrv = getData($conn, $sqlv);
foreach ($arrv as $dv) {
$id_barang = getBarang($conn, $dv["id_barang"]);
$jumlah = $dv["jumlah"];
$subtotal = ($dv["subtotal"]);
$harga = RP($subtotal / $jumlah);
$tot += $subtotal;
$gab .= "$id_barang @RP. $harga ($jumlah),";
}
$gab .= "Total " . RP($tot);
} else {
$gab = "Belum ada order Transaksi...";
}

return $gab;
}
?>

<?php function RP($rupiah){
return number_format($rupiah, "2", ",", ".");
} ?>


<?php
function BAL($tanggal){
$arr = explode(" ", $tanggal);
if ($arr[1] == "Januari" || $arr[1] == "January") {
$bul = "01";
} else if ($arr[1] == "Februari" || $arr[1] == "February") {
$bul = "02";
} else if ($arr[1] == "Maret" || $arr[1] == "March") {
$bul = "03";
} else if ($arr[1] == "April") {
$bul = "04";
} else if ($arr[1] == "Mei" || $arr[1] == "May") {
$bul = "05";
} else if ($arr[1] == "Juni" || $arr[1] == "June") {
$bul = "06";
} else if ($arr[1] == "Juli" || $arr[1] == "July") {
$bul = "07";
} else if ($arr[1] == "Agustus" || $arr[1] == "August") {
$bul = "08";
} else if ($arr[1] == "September") {
$bul = "09";
} else if ($arr[1] == "Oktober" || $arr[1] == "October") {
$bul = "10";
} else if ($arr[1] == "November") {
$bul = "11";
} else if ($arr[1] == "Nopember") {
$bul = "11";
} else if ($arr[1] == "Desember" || $arr[1] == "December") {
$bul = "12";
}
return "$arr[2]-$bul-$arr[0]";
}
?>


<?php
function BALP($tanggal){
$arr = explode(" ", $tanggal);
if ($arr[1] == "Jan") {
$bul = "01";
} else if ($arr[1] == "Feb") {
$bul = "02";
} else if ($arr[1] == "Mar") {
$bul = "03";
} else if ($arr[1] == "Apr") {
$bul = "04";
} else if ($arr[1] == "Mei") {
$bul = "05";
} else if ($arr[1] == "Jun") {
$bul = "06";
} else if ($arr[1] == "Jul") {
$bul = "07";
} else if ($arr[1] == "Agu") {
$bul = "08";
} else if ($arr[1] == "Sep") {
$bul = "09";
} else if ($arr[1] == "Okt") {
$bul = "10";
} else if ($arr[1] == "Nov") {
$bul = "11";
} else if ($arr[1] == "Nop") {
$bul = "11";
} else if ($arr[1] == "Des") {
$bul = "12";
}
return "$arr[2]-$bul-$arr[0]";
}
?>

<?php
function WKTP($sekarang){
$tanggal = substr($sekarang, 8, 2) + 0;
$bulan = substr($sekarang, 5, 2);
$tahun = substr($sekarang, 2, 2);

$judul_bln = array(1 => "Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Agu", "Sep", "Okt", "Nov", "Des");
$wk = $tanggal . " " . $judul_bln[(int)$bulan] . "'" . $tahun;
return $wk;
}
?>

<?php
function process($conn, $sql){
$s = false;
$conn->autocommit(FALSE);
try {
$rs = $conn->query($sql);
if ($rs) {
$conn->commit();
$last_inserted_id = $conn->insert_id;
$affected_rows = $conn->affected_rows;
$s = true;
}
} catch (Exception $e) {
echo 'fail: ' . $e->getMessage();
$conn->rollback();
}
$conn->autocommit(TRUE);
return $s;
}

function getJum($conn, $sql)
{
$rs = $conn->query($sql);
$jum = $rs->num_rows;
$rs->free();
return $jum;
}

function getField($conn, $sql){
$rs = $conn->query($sql);
$rs->data_seek(0);
$d = $rs->fetch_assoc();
$rs->free();
return $d;
}

function getData($conn, $sql){
$rs = $conn->query($sql);
$rs->data_seek(0);
$arr = $rs->fetch_all(MYSQLI_ASSOC);
//foreach($arr as $row) {
//  echo $row['nama_kelas'] . '*<br>';
//}

$rs->free();
return $arr;
}

function getPelanggan($conn, $kode){
$field = "nama_pelanggan";
$sql = "SELECT `$field` FROM `tb_pelanggan` where `id_pelanggan`='$kode'";
$rs = $conn->query($sql);
$rs->data_seek(0);
$row = $rs->fetch_assoc();
$rs->free();
return $row[$field];
}

function getBarang($conn, $kode){
$field = "nama_barang";
$sql = "SELECT `$field` FROM `tb_barang` where `id_barang`='$kode'";
$rs = $conn->query($sql);
$rs->data_seek(0);
$row = $rs->fetch_assoc();
$rs->free();
return $row[$field];
}

function getDetail($conn, $kode){
$gab = "";
$sqlv = "select * from `tb_detail` where `id_order`='$kode' order by `id_detail` asc";
$jumv = getJum($conn, $sqlv);
if ($jumv > 0) {
$gab = "<ol>";
$arrv = getData($conn, $sqlv);
foreach ($arrv as $dv) {
$id_detail = $dv["id_detail"];
$id_order = $dv["id_order"];
$id_barang = $dv["id_barang"];
$jumlah = $dv["jumlah"];
$subtotal = RP($dv["subtotal"]);
$catatan = $dv["catatan"];

$sql = "select `id_barang`,`nama_barang,`harga` from `tb_barang` where `id_barang`='$id_barang'";
$d = getField($conn, $sql);
$nama_barang = $d["nama_barang"];
$harga = RP($d["harga"]);

$gab .= "<li>
<p>$nama_barang -> $jumlah @Rp. $harga <i><br> Catatan: $catatan</i>";
}
$gab .= "</ol>";
} else {
$gab = "Belum Ada Transaksi....";
}
return $gab;
}

?>

<?php
function getDetail2($conn, $kode){
$no = 1;
$gab = 0;
$lap = "";
$sql = "select * from `tb_detail` where id_order='$kode' order by `id_detail` asc";
$jum = getJum($conn, $sql);
if ($jum > 0) {
$arr = getData($conn, $sql);
foreach ($arr as $d) {
$no++;
$id_barang = $d["id_barang"];
$jumlah = $d["jumlah"];
$harga = RP($d["harga"]);
$nm = getBarang($conn, $id_barang);

$subtotal = $d["subtotal"];
$gab += $subtotal;
$lap .= "<li>$nm: $jumlah x $harga</li>";
}
$lap .= "Total: Rp." . RP($gab);
} else {
$lap = "Belum Ada Transaksi Pembelian...";
}

return $lap;
}

?>


<?php
function getDetail3($conn, $kode){
$no = 1;
$gab = 0;
$lap = "";
$sql = "select * from `tb_detail` where id_order='$kode' order by `id_detail` asc";
$jum = getJum($conn, $sql);
if ($jum > 0) {
$arr = getData($conn, $sql);
foreach ($arr as $d) {
$no++;
$id_barang = $d["id_barang"];
$jumlah = $d["jumlah"];
$harga = RP($d["harga"]);
$nm = getBarang($conn, $id_barang);

$subtotal = $d["subtotal"];
$gab += $subtotal;
$lap .= "$nm: $jumlah x $harga,";
}
$lap .= "Total: Rp." . RP($gab);
} else {
$lap = "Belum Ada Transaksi Pembelian...";
}
return $lap;
}

?>

<?php
$k_value=15;
$time_start = microtime(true);
?>

<script type="text/javascript"> 
function PRINTME(){ 
win=window.open('knnprint.php','win','width=1000, height=400, menubar=0, scrollbars=1, resizable=0, location=0, toolbar=0, status=0'); } 
</script>


<script language="JavaScript">
function buka(url) {window.open(url, 'window_baru', 'width=800,height=600,left=320,top=100,resizable=1,scrollbars=1');}
</script>

<?php
$CLASS="kategori"; 

$AR= array(setV(5), setV(4), setV(3), setV(2),setV(1));
$sql="select * from `$tbpengujian` order by `id_pengujian` desc";
if(isset($_GET["id"])){
$id_pengujian=$_GET["id"];
$sql="select * from `$tbpengujian` where `id_pengujian`='$id_pengujian'";
}
$d=getField($conn,$sql);
$IDUJI=$d["id_pengujian"];
$NM=$d["nama"];
$jenis_kelamin = $d["jenis_kelamin"];
$program_studi = $d["program_studi"];
$attr1 = $d["attr1"];
$attr2 = $d["attr2"];
$attr3 = $d["attr2"];
$attr4 = $d["attr2"];
$attr5 = $d["attr2"];
$attr6 = $d["attr2"];
$attr7 = $d["attr2"];
$attr8 = $d["attr2"];
$attr9 = $d["attr2"];
$attr10 = $d["attr2"];
$attr11 = $d["attr2"];
$attr12 = $d["attr2"];
$attr13 = $d["attr2"];
$attr14 = $d["attr2"];
$attr15 = $d["attr2"];
$attr16 = $d["attr2"];
$attr17 = $d["attr2"];
$attr18 = $d["attr2"];
$attr19 = $d["attr2"];
$attr20 = $d["attr2"];
$attr21 = $d["attr2"];

$arB[0]=setV($attr1);
$arB[1]=setV($attr2);
$arB[2]=setV($attr3);
$arB[3]=setV($attr4);
$arB[4]=setV($attr5);
$arB[5]=setV($attr6);
$arB[6]=setV($attr7);
$arB[7]=setV($attr8);
$arB[8]=setV($attr9);
$arB[9]=setV($attr10);
$arB[10]=setV($attr11);
$arB[11]=setV($attr12);
$arB[12]=setV($attr13);
$arB[13]=setV($attr14);
$arB[14]=setV($attr15);
$arB[15]=setV($attr16);
$arB[16]=setV($attr17);
$arB[17]=setV($attr18);
$arB[18]=setV($attr19);
$arB[19]=setV($attr20);
$arB[20]=setV($attr21); 

$arA[0]=$attr1; 
$arA[1]=$attr2;
$arA[2]=$attr3;
$arA[3]=$attr4;
$arA[4]=$attr5;
$arA[5]=$attr6;
$arA[6]=$attr7;
$arA[7]=$attr8;
$arA[8]=$attr9;
$arA[9]=$attr10;
$arA[10]=$attr11;
$arA[11]=$attr12;
$arA[12]=$attr13;
$arA[13]=$attr14;
$arA[14]=$attr15;
$arA[15]=$attr16;
$arA[16]=$attr17;
$arA[17]=$attr18;
$arA[18]=$attr19;
$arA[19]=$attr20;
$arA[20]=$attr21; 
?>

<link rel="stylesheet" href="jsacordeon/jquery-ui.css">
<link rel="stylesheet" href="resources/demos/style.css">
<script src="jsacordeon/jquery-1.12.4.js"></script>
  <script src="jsacordeon/jquery-ui.js"></script>
  <script>
  $( function() {
    $( "#accordion" ).accordion({
      collapsible: true
    });
  } );
  </script>

<div align="RiGHT">
<h3>
<a href="?mnu=1">Algoritma 1</a> | 
<a href="?mnu=2">Algoritma 2</a>
</h3>
</div>
<div id="accordion">
<?php
$time_start = microtime(true);
?>
<h4>Analisa Algoritma 1</h4>
<div>

<h3>Data Pengujian</h3>
<table CLASS="table table-bordered">

<th width="20%"><label for="id_user">ID UJI</label>
<th width="1%">:
<th colspan="2">UJI:<?php echo $IDUJI;?></tr>

<tr>
<td height="24"><label for="nama">Nama Pengujian</label>
<td>:<td><?php echo $NM;?>
</td>
</tr>

<tr>
<td height="24"><label for="nama">Jenis Kelamin</label>
<td>:<td><?php echo $jenis_kelamin;?>
</td>
</tr>

<tr>
<td height="24"><label for="nama">Program Studi</label>
<td>:<td><?php echo $program_studi;?>
</td>
</tr>
</table>

<br>

<div CLASS="section layout_padding theme_bg">
        <div CLASS="container">
            <div CLASS="row">

                <div CLASS="col-lg-6 col-md-6 col-sm-11 white_fonts">
                    <h3 CLASS="small_heading">Algoritma 1</h3>
                    <p>sistemnya menggunakan klasifikasi ketetanggaan (neighbor) sebagai nilai prediksi dari query instance yang baru. Algoritma ini sederhana, bekerja berdasarkan jarak terpendek dari query instance ke training sample untuk menentukan ketetanggaannya.
                </div>
<br><br>
                <div CLASS="col-lg-6 col-md-6 col-sm-12 text_align_center">
                    <div CLASS="full"><br><br>
                        <img CLASS="img-responsive" src="ypathfile/1.png" alt="#" />
                    </div>
                </div>
            </div>
        </div>
    </div>
<div CLASS="section layout_padding">
        <div CLASS="container">

            <div CLASS="row">
                <div CLASS="col-md-12">
                    <div CLASS="full center margin-bottom_30">
                        <div CLASS="heading_main text_align_center">
                            <h2><span CLASS="theme_color">Tahapan Langkah Algoritma 1</h2>
                            <p CLASS="large">Resume</p>
                        </div>
                    </div>
                </div>
            </div>

            <div CLASS="row">
                <div CLASS="col-lg-11">
<ol>
<li>Menentukan parameter k (jumlah tetangga paling dekat).
<li>Menghitung kuadrat jarak eucliden objek terhadap data training yang diberikan.<li>Mengurutkan hasil no 2 secara ascending (berurutan dari nilai tinggi ke rendah)
<li>Mengumpulkan kategori Y (Klasifikasi nearest neighbor berdasarkan nilai k)
<li>Dengan menggunakan kategori nearest neighbor yang paling mayoritas maka dapat dipredisikan kategori objek.
</ol>
                </div>

                <div CLASS="col-lg-11">
                    <p><i>Jadi, Untuk mengklasifikasi instance x menggunakan A1, kita cukup mendefinisikan fungsi untuk menghitung jarak antar-instance, menghitung jarak x dengan semua instance lainnya berdasarkan fungsi tersebut, dan menentukan kelas x sebagai kelas yang paling banyak muncul dalam k instance terdekat</i></p>
                </div>

            </div>
  <div CLASS="col-lg-6 col-md-6 col-sm-12 text_align_center">
                    <div CLASS="full">
                        <img CLASS="img-responsive" src="ypathfile/ecc.png" alt="#" />
                    </div>
                </div>
        </div>
    </div>
</div>

<br><br><br><br><br><br><br><br><br><br><br><br>
<?php
$TBL="$tbdataset";
$pk="id_dataset";
$M=0;
$dist=0;
  $sqlv="select distinct(`$CLASS`) from `$TBL` order by `$CLASS` asc";
  $jumv=getJum($conn,$sqlv);
if($jumv <1){echo "<h1>Maaf Data Training belum tersedia</h1>";}
$arrv=getData($conn,$sqlv);
$arD=array();
foreach($arrv as $dv) {
$KTG=$dv["$CLASS"];
$ARM[$dist]=$KTG;
$dist++;

$sql="select * from `$TBL` where `$CLASS`='$KTG' order by `$pk` asc";
$jumvv=getJum($conn,$sql);//WHILE
?>

<h4>Tabel Datalatih   <?php echo strtoupper("$CLASS $KTG")." ($jumvv Item)";?></h4>
<div>
<table width="100%">
  <tr bgcolor="#036">
    <td width="3%"><center><font color="white">No</td>
    <th width="5%" title="<?php echo $ckreteria1; ?>"><?php echo $clabel1; ?></td>
<th width="5%" title="<?php echo $ckreteria2; ?>"><?php echo $clabel2; ?></td>
<th width="5%" title="<?php echo $ckreteria3; ?>"><?php echo $clabel3; ?></td>
<th width="5%" title="<?php echo $ckreteria4; ?>"><?php echo $clabel4; ?></td>
<th width="5%" title="<?php echo $ckreteria5; ?>"><?php echo $clabel5; ?></td>
<th width="5%" title="<?php echo $ckreteria6; ?>"><?php echo $clabel6; ?></td>
<th width="5%" title="<?php echo $ckreteria7; ?>"><?php echo $clabel7; ?></td>
<th width="5%" title="<?php echo $ckreteria8; ?>"><?php echo $clabel8; ?></td>
<th width="5%" title="<?php echo $ckreteria9; ?>"><?php echo $clabel9; ?></td>
<th width="5%" title="<?php echo $ckreteria10; ?>"><?php echo $clabel10; ?></td>
<th width="5%" title="<?php echo $ckreteria11; ?>"><?php echo $clabel11; ?></td>
<th width="5%" title="<?php echo $ckreteria12; ?>"><?php echo $clabel12; ?></td>
<th width="5%" title="<?php echo $ckreteria13; ?>"><?php echo $clabel13; ?></td>
<th width="5%" title="<?php echo $ckreteria14; ?>"><?php echo $clabel14; ?></td>
<th width="5%" title="<?php echo $ckreteria15; ?>"><?php echo $clabel15; ?></td>
<th width="5%" title="<?php echo $ckreteria16; ?>"><?php echo $clabel16; ?></td>
<th width="5%" title="<?php echo $ckreteria17; ?>"><?php echo $clabel17; ?></td>
<th width="5%" title="<?php echo $ckreteria18; ?>"><?php echo $clabel18; ?></td>
<th width="5%" title="<?php echo $ckreteria19; ?>"><?php echo $clabel19; ?></td>
<th width="5%" title="<?php echo $ckreteria20; ?>"><?php echo $clabel20; ?></td>
<th width="5%" title="<?php echo $ckreteria20; ?>"><?php echo $clabel20; ?></td>
<th width="5%" title="<?php echo $ckreteria21; ?>"><?php echo $clabel21; ?></td>
  </tr>
<?php  
$no=1;  
$arr=getData($conn,$sql);
foreach($arr as $d) {
$PK=$d["$pk"];
$NM=strtoupper($d["nama"]);
$KET=$d["keterangan"];

$attr1 = $d["attr1"];
$attr2 = $d["attr2"];
$attr3 = $d["attr2"];
$attr4 = $d["attr2"];
$attr5 = $d["attr2"];
$attr6 = $d["attr2"];
$attr7 = $d["attr2"];
$attr8 = $d["attr2"];
$attr9 = $d["attr2"];
$attr10 = $d["attr2"];
$attr11 = $d["attr2"];
$attr12 = $d["attr2"];
$attr13 = $d["attr2"];
$attr14 = $d["attr2"];
$attr15 = $d["attr2"];
$attr16 = $d["attr2"];
$attr17 = $d["attr2"];
$attr18 = $d["attr2"];
$attr19 = $d["attr2"];
$attr20 = $d["attr2"];
$attr21 = $d["attr2"];

$k1=setV($attr1);
$k2=setV($attr2);
$k3=setV($attr3);
$k4=setV($attr4);
$k5=setV($attr5);
$k6=setV($attr6);
$k7=setV($attr7);
$k8=setV($attr8);
$k9=setV($attr9);
$k10=setV($attr10);
$k11=setV($attr11);
$k12=setV($attr12);
$k13=setV($attr13);
$k14=setV($attr14);
$k15=setV($attr15);
$k16=setV($attr16);
$k17=setV($attr17);
$k18=setV($attr18);
$k19=setV($attr19);
$k20=setV($attr20);
$k21=setV($attr21); 

$c=0;
$arD[$M][$c]=$attr1;$c++;
$arD[$M][$c]=$attr2;$c++;
$arD[$M][$c]=$attr3;$c++;
$arD[$M][$c]=$attr4;$c++;
$arD[$M][$c]=$attr5;$c++;
$arD[$M][$c]=$attr6;$c++;
$arD[$M][$c]=$attr7;$c++;
$arD[$M][$c]=$attr8;$c++;
$arD[$M][$c]=$attr9;$c++;
$arD[$M][$c]=$attr10;$c++;
$arD[$M][$c]=$attr11;$c++;
$arD[$M][$c]=$attr12;$c++;
$arD[$M][$c]=$attr13;$c++;
$arD[$M][$c]=$attr14;$c++;
$arD[$M][$c]=$attr15;$c++;
$arD[$M][$c]=$attr16;$c++;
$arD[$M][$c]=$attr17;$c++;
$arD[$M][$c]=$attr18;$c++;
$arD[$M][$c]=$attr19;$c++;
$arD[$M][$c]=$attr20;$c++;
$arD[$M][$c]=$attr21;$c++;

$arD[$M][$c]=$KTG;$c++;
$arD[$M][$c]=$PK; $c++;

$color="#dddddd";
if($no %2==0){$color="#eeeeee";}
echo"<tr bgcolor='$color'>
<td valign='top'>$no</td>
<td><label title='$k1'><small>$attr1</small></label></td>
<td><label title='$k2'><small>$attr2</small></label></td>
<td><label title='$k3'><small>$attr3</small></label></td>
<td><label title='$k4'><small>$attr4</small></label></td>
<td><label title='$k5'><small>$attr5</small></label></td>
<td><label title='$k6'><small>$attr6</small></label></td>
<td><label title='$k7'><small>$attr7</small></label></td>
<td><label title='$k8'><small>$attr8</small></label></td>
<td><label title='$k9'><small>$attr9</small></label></td>
<td><label title='$k10'><small>$attr10</small></label></td>
<td><label title='$k11'><small>$attr11</small></label></td>
<td><label title='$k12'><small>$attr12</small></label></td>
<td><label title='$k13'><small>$attr13</small></label></td>
<td><label title='$k14'><small>$attr14</small></label></td>
<td><label title='$k15'><small>$attr15</small></label></td>
<td><label title='$k16'><small>$attr16</small></label></td>
<td><label title='$k17'><small>$attr17</small></label></td>
<td><label title='$k18'><small>$attr18</small></label></td>
<td><label title='$k19'><small>$attr19</small></label></td>
<td><label title='$k20'><small>$attr20</small></label></td>
<td><label title='$k21'><small>$attr21</small></label></td>
<td><label title='$NM $KET'><small><small>$NM $KET</small></small></label></td>
</tr>";
$no++;
$M++;
}//while
?>
</table>
</div>
<?php
}//distinct
 
$JD=$M;//jumlah all data all class
$JC=$c;//21
//col 3 kategori
//col 21 PK

$gab1="<h4>Hitung Jarak Eccludean Distance</h4>
<table width='95%'>
  <tr bgcolor='#036'>
    <th width='3%'><center><font color='#ffffff'>No</td>
<th width='17%'><center><font color='#ffffff'>$CLASS</td>
    <th width='70%'><center><font color='#ffffff'>Formula</td>
<th width='5%'><center><font color='#ffffff'>Bobot</font></td>
  </tr>";

$arDB=array();
  for($m=0;$m<$M;$m++){
  $no=$m+1;
  $KAT=$arD[$m][$JC-2];//class
  $PKEY=$arD[$m][$JC-1];//pkey
  $arDB=$arD[$m];//array 1xJC
  $ar=getECC($arA,$arDB);
  $bobot=$ar[0];
  $sbobot1=$ar[1];
  $sbobot2=$ar[2];
  $arBobot[$m]=$bobot;
  $arSBobot1[$m]=$sbobot1;
  $arSBobot2[$m]=$sbobot2;
  $arSKat[$m]=$KAT;
  $arIKat[$m]=$PKEY;
  
$color="#dddddd";
if($no %2==0){$color="#eeeeee";}
$gab1.="<tr bgcolor='$color'>
<td valign='top'>$no</td>
<td valign='top' align='left'>$KAT
<td valign='top' align='left'><small><i><small>$sbobot1 = $sbobot2</small></small></i>
<td valign='top' align='left'><small><i>$bobot</small><i>
</tr>";
}//for
$gab1.="</table>";

  $size = $M;
    for ($i=0; $i<$size; $i++) {
        for ($j=0; $j<$size-1-$i; $j++) {
            if ($arBobot[$j+1] < $arBobot[$j]) {//>ambil tertinggi, <ambil terendah
                swap($arBobot, $j, $j+1);
swap($arSBobot1, $j, $j+1);
swap($arSBobot2, $j, $j+1);
swap($arSKat, $j, $j+1);
swap($arIKat, $j, $j+1);
            }
        }
    }

$gab2= "<h3>KNN KValue $k_value Tertinggi</h3>";
$gab2.="<table width=\"95%\">
  <tr bgcolor=\"#036\">
    <th width=\"3%\"><center><font color=\"#ffffff\">No</td>
<th width=\"5%\"><center><font color=\"#ffffff\">Kategori</td>
    <th width=\"87%\"><center><font color=\"#ffffff\">Formula</td>
<th width=\"5%\"><center><font color=\"#ffffff\">Bobot</font></td>
  </tr>";


$j1=0;
$tot1=0;
$j2=0;
$tot2=0;
$j3=0;
$tot3=0;

  for($m=0;$m<$k_value;$m++){
  $no=$m+1;
  $KAT=$arSKat[$m];
  $idkat=$arIKat[$m];
  $bobot=$arBobot[$m];
  $sbobot1=$arSBobot1[$m];
  $sbobot2=$arSBobot2[$m];

  if($KAT==$ARM[0]){$j1++;$tot1+=$bobot;}//kat1
  else if($KAT==$ARM[1]){$j2++;$tot2+=$bobot;}//kat2
  else if($KAT==$ARM[2]){$j3++;$tot3+=$bobot;}//kat2
  
$color="#dddddd";
if($no %2==0){$color="#eeeeee";}
$gab2.="<tr bgcolor=\"$color\">
<td valign=\"top\">$no</td>
<td valign=\"top\" align=\"left\">#".$KAT."
<td valign=\"top\" align=\"left\"><small><i><small>$sbobot1</small>= $sbobot2</small></i>
<td valign=\"top\" align=\"left\"><small><i>$bobot</small></i>
</tr>";
}//for
$gab2.="</table>";

$shasil="?";
$bobot=0;
if($j1>=$j2 && $j1>=$j3 ){$shasil=$ARM[0];$bobot=$tot1/$j1;}
else if($j2>=$j1 && $j2>=$j3){$shasil=$ARM[1];$bobot=$tot2/$j2;}
else if($j3>=$j1 && $j3>=$j2){$shasil=$ARM[2];$bobot=$tot3/$j3;}

$gab2.="<h4>ASC Status Dominan $k_value XYZ ($j1:$j2) = <u>".strtoupper($shasil)." ($bobot)</u></h4>";


$hasil= "<h3>Analisa XYZan $nama $idpel Dengan $k_value XYZ ($j1:$j2)=>".strtoupper($shasil)."  ($bobot)</h3><div>$gab1 $gab2</div>";
$_SESSION["gab"]=$hasil;


$img="<img src=\"ypathicon/print.png\" width=\"20\" height=\"20\" title=\"PRINT\" OnClick=\"PRINTME()\"><br>";
$hasilprint= "<h3>Analisa an $nama $idpel Dengan XYZ $k_value XYZ($j1:$j2:$j3) =>".strtoupper($shasil)." ($bobot)</h3><div>$gab1 $gab2</div>";

echo $hasilprint;


?>

</div>

<?php

$time_end = microtime(true);
$durasi = ($time_end - $time_start) *1000;
echo"<br><i>Waktu Proses $durasi ms</i>"; 

echo $sql="update `$tbpengujian` set
`analisa1`='$gab',
`kategori1`='$shasil',
`hasil1`='Analisa an $nama $idpel Dengan XYZ $k_value KNN ($j1:$j2) =>".strtoupper($shasil)." ($bbt), $durasi ms |$kathasil'
where `id_pengujian`='$id_pengujian'";
$up=process($conn,$sql);

?>

<?php
function swap(&$arr, $a, $b) {
    $tmp = $arr[$a];
    $arr[$a] = $arr[$b];
    $arr[$b] = $tmp;
}
?>


<?php
function getECC($arrA,$arrB){
$c=count($arrA);
$h=0;
$vs1="";
$vs2="";
for($i=0;$i<$c;$i++){
$a=$arrA[$i];
$b=$arrB[$i];
$v=pow(($a-$b),2);
$h+=$v;
$vs1.="($a-$b)<sup>2</sup>+";
$vs2.="$v+";
}
$vs1=substr($vs1,0,strlen($vs1)-1);
$vs2=substr($vs2,0,strlen($vs2)-1);
$h=sqrt($h);
$vs1="sqrt($vs1)";
$vs2="sqrt($vs2)";
$ar=array();
$ar[0]=bul($h);
$ar[1]=$vs1;
$ar[2]=$vs2;
return $ar;
}



function getVx($ar,$v){
$h=0;
for($i=0;$i<count($ar);$i++){
if($ar[$i]==$v){
$h=$i+1;
break;
}
}
return $h;
}

function getDistinctx($conn,$kolom){
$ar=array();
$sql="select distinct(`$kolom`) from `tb_dataset` order by `$kolom` asc";
   $arr=getData($conn,$sql);
$i=0;
foreach($arr as $d) {
$value=$d["$kolom"];
if($value==42){$value="N/A";}
$ar[$i]=$value;
$i++;
}
return $ar;
}

?>








Mencari Tanggal Terakhir Suatu Bulan

  $a_date = "$tahun-$bulan-01"; $lastdate= date('t',strtotime($a_date));//Y-m-t <?php require_once"koneksivar.php&...