Advertisement
Guest User

Untitled

a guest
Aug 31st, 2016
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.44 KB | None | 0 0
  1. <?php
  2.  
  3.     header('Access-Control-Allow-Origin: *');
  4.     header('Access-Control-Allow-Methods: GET, POST');
  5.  
  6.     $servername = "localhost";
  7.     $username = "root";
  8.     $password = "";
  9.     $dbname = "NoSurat";
  10.  
  11.  
  12.     if(isset($_POST['kode'])){
  13.         if($_POST['kode'] == "auth"){
  14.             echo json_encode(autentikasi($_POST['username'], $_POST['password']));
  15.         }
  16.  
  17.         if($_POST['kode'] == "ambil"){
  18.  
  19.             // autentikasi data setiap kali melakukan post request
  20.             $auth = autentikasi($_POST['username'], $_POST['password']);
  21.  
  22.             // autentikasi data gagal
  23.             if($auth == "" || $auth == false || $auth == null){
  24.                 echo "Auth failed";
  25.                 return;
  26.             }
  27.  
  28.             // autentikasi data berhasil
  29.             echo json_encode(ambilSemuaSurat());
  30.         }
  31.     }
  32.  
  33.     function ambilNol($angka){
  34.         return $angka < 10 ? "00" : ($angka < 100 ? "0" : "");
  35.     }
  36.  
  37.     function getNowMonthRomawi(){
  38.         switch(date('m')){
  39.             case '01': return 'I';
  40.             case '02': return 'II';
  41.             case '03': return 'III';
  42.             case '04': return 'IV';
  43.             case '05': return 'V';
  44.             case '06': return 'VI';
  45.             case '07': return 'VII';
  46.             case '08': return 'VIII';
  47.             case '09': return 'IX';
  48.             case '10': return 'X';
  49.             case '11': return 'XI';
  50.             case '12': return 'XII';
  51.         }
  52.     }
  53.  
  54.     function nomorSuratTerakhir($jenis){
  55.         $sql = "SELECT nomor_surat FROM Surat WHERE jenis = '$jenis' ORDER BY nomor_surat DESC LIMIT 1";
  56.         $dataSQL = __execute__sql($sql);
  57.  
  58.         if($dataSQL == NULL)
  59.             return (object) array(
  60.                 'nomor_surat' => '0'
  61.             );
  62.  
  63.         return $dataSQL->data->fetch_assoc();
  64.     }
  65.  
  66.  
  67.     function tambahSurat($nama, $jenis, $derajat, $klasifikasi, $catatan, $yang_mengeluarkan, $username, $password){
  68.         $auth = autentikasi($username, $password);
  69.  
  70.         if($auth == "" || $auth == false || $auth == null)
  71.             return -99;
  72.  
  73.         $nomor_surat = ((int) nomorSuratTerakhir($jenis)['nomor_surat']) + 1;
  74.  
  75.         $sql = "INSERT INTO `Surat`(`nama`, `jenis`, `derajat`, `klasifikasi`, `catatan`, `nomor_surat`, `yang_mengeluarkan`) VALUES ('$nama', '$jenis', '$derajat', '$klasifikasi', '$catatan', '$nomor_surat', '$yang_mengeluarkan')";
  76.  
  77.         $dataSQL = __execute__sql($sql);
  78.  
  79.         if($dataSQL == NULL)
  80.             return -1;
  81.  
  82.         return $dataSQL->data ? $nomor_surat : -1;
  83.     }
  84.  
  85.     function ambilSurat($noSurat, $jenis){
  86.         $sql = "SELECT id_surat, nama, (SELECT nama_jenis FROM Jenis_Surat WHERE Jenis_Surat.id = jenis) AS jenis, (SELECT prefix FROM Jenis_Surat WHERE Jenis_Surat.id = jenis) AS prefix_surat, (SELECT nama_derajat FROM Derajat WHERE Derajat.id = derajat) AS derajat, (SELECT nama_klasifikasi FROM Klasifikasi WHERE Klasifikasi.id = klasifikasi) AS klasifikasi, catatan, nomor_surat, (SELECT nama_yang_mengeluarkan FROM Yang_Mengeluarkan WHERE Yang_Mengeluarkan.id = yang_mengeluarkan) as yang_mengeluarkan FROM Surat WHERE jenis = '$jenis' AND nomor_surat = '$noSurat'";
  87.  
  88.         $dataSQL = __execute__sql($sql);
  89.  
  90.         if($dataSQL == NULL)
  91.             return false;
  92.  
  93.         return $dataSQL->data->fetch_assoc();
  94.     }
  95.  
  96.     function ambilSemuaSurat(){
  97.         $sql = "SELECT * FROM Surat JOIN Jenis_Surat ON Surat.jenis = Jenis_Surat.id";
  98.  
  99.         $dataSQL = __execute__sql($sql);
  100.  
  101.         if($dataSQL == NULL)
  102.             return false;
  103.  
  104.         $hasil = array();
  105.  
  106.         while($row = $dataSQL->data->fetch_assoc())
  107.             array_push($hasil, $row);
  108.  
  109.         return $hasil;
  110.     }
  111.  
  112.     function autentikasi($username, $password){
  113.         $md5password = md5($password);
  114.         $sql = "SELECT indeks FROM Autentikasi WHERE username = '$username' AND password = '$md5password'";
  115.  
  116.         $dataSQL = __execute__sql($sql);
  117.  
  118.         if($dataSQL == NULL)
  119.             return false;
  120.  
  121.         return $dataSQL->data->fetch_assoc();
  122.     }
  123.  
  124.     function __execute__sql($query){
  125.         global $servername, $username, $password, $dbname;
  126.  
  127.         // Create connection
  128.         $conn = new mysqli($servername, $username, $password, $dbname);
  129.  
  130.         // Check connection
  131.         // ERROR: Gagal melakukan koneksi ke database
  132.         if ($conn->connect_error)
  133.             return (object)array(
  134.                 'error' => true,
  135.                 'data' => $conn->connect_error
  136.             );
  137.        
  138.         // Request query
  139.         $hasil = $conn->query($query);
  140.  
  141.         // Iniatializing error message variable
  142.         $errorDB = "";
  143.  
  144.         // If query error, get the error message
  145.         if(!$hasil)
  146.             $errorDB = $conn->error;
  147.  
  148.         // Close connection
  149.         $conn->close();
  150.  
  151.         // If query succes return result
  152.         // ERROR: Gagal melakukan query pada databse
  153.         if($hasil == true)
  154.             return (object)array(
  155.                 'error' => false,
  156.                 'data' => $hasil
  157.             );
  158.  
  159.         // Else return error message
  160.         return (object)array(
  161.             'error' => true,
  162.             'data' => $errorDB
  163.         );
  164.     }
  165. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement