Advertisement
adrian_abdillah

api-sosmed.php

Jan 29th, 2020
598
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 9.18 KB | None | 0 0
  1. <?php
  2. /**
  3.  * KangHL
  4.  * Domain: https://kanghl.web.id/
  5.  */
  6. require '../config.php';
  7. header('Content-Type: application/json');
  8. if ($maintenance == 1) {
  9.     $hasilnya = array('status' => false, 'data' => array('pesan' => 'Maintenance'));
  10.     exit(json_encode($hasilnya, JSON_PRETTY_PRINT));
  11. }
  12. if (isset($_POST['api_key']) AND isset($_POST['action'])) {
  13.     $apinya = $conn->real_escape_string($_POST['api_key']);
  14.     $aksinya = $_POST['action'];
  15.  
  16.     if (!$apinya || !$aksinya) {
  17.         $hasilnya = array('status' => false, 'data' => array('pesan' => 'Permintaan Tidak Sesuai'));
  18.  
  19.     } else {
  20.         $cek_usernya = $conn->query("SELECT * FROM users WHERE api_key = '$apinya'");
  21.         $datanya = $cek_usernya->fetch_assoc();
  22.         if (mysqli_num_rows($cek_usernya) == 1) {
  23.            
  24.         if ($datanya['api_status'] == "off") {
  25.             $hasilnya = array('status' => false, 'data' => array('pesan' => 'Your Api Status Offline'));
  26.         } else if ($datanya['ip_static'] != get_client_ip()) {
  27.         $hasilnya = array('status' => false, 'data' => array('pesan' => 'Your IP '.get_client_ip().' Not Allowed'));
  28.         } else {
  29.            
  30.        
  31.             if ($aksinya == 'pemesanan') {
  32.                 if (isset($_POST['layanan']) AND isset($_POST['target']) AND isset($_POST['jumlah'])) {
  33.                     $layanan = $conn->real_escape_string(trim(filter($_POST['layanan'])));
  34.                     $target = $conn->real_escape_string(trim(filter($_POST['target'])));
  35.                     $jumlah = $conn->real_escape_string(trim(filter($_POST['jumlah'])));
  36.                 } else if (isset($_POST['layanan']) AND isset($_POST['target']) AND isset($_POST['custom_comments'])) {
  37.                     $layanan = $conn->real_escape_string(trim(filter($_POST['layanan'])));
  38.                     $target = $conn->real_escape_string(trim(filter($_POST['target'])));
  39.                     $post_comments = $_POST['custom_comments'];
  40.                     if (!$layanan || !$target) {
  41.                         $hasilnya = array('status' => false, 'data' => array('pesan' => 'Permintaan Tidak Sesuai'));
  42.                     } else {
  43.                         $cek_layanan = $conn->query("SELECT * FROM layanan_sosmed WHERE service_id = '$layanan' AND status = 'Aktif'");
  44.                         $data_layanan = $cek_layanan->fetch_assoc();
  45.                         if (mysqli_num_rows($cek_layanan) == 0) {
  46.                             $hasilnya = array('status' => false, 'data' => array('pesan' =>'Layanan Tidak Tersedia'));
  47.                         } else {
  48.                             $order_id = acak_nomor(3).acak_nomor(4);
  49.                             $cek_profit = $data_layanan['profit'] / 1000;
  50.                             $cek_harga = $data_layanan['harga'] / 1000;
  51.                             $hitung = count(explode(PHP_EOL, $post_comments));
  52.                                                     $replace = str_replace("\r\n",'\r\n', $post_comments);
  53.                                                     if (!empty($post_comments)) {
  54.                                                     $jumlah = $hitung;
  55.                                                 } else {
  56.                                                     $jumlah = $jumlah;
  57.                                                 }
  58.                                                 // $price = $rate*$post_quantity;
  59.                                                 if (!empty($post_comments)) {
  60.                                             $harga = $cek_harga*$hitung;
  61.                                             $profit = $cek_profit*$hitung;
  62.                                                 } else {
  63.                                             $harga = $cek_harga*$jumlah;
  64.                                             $profit = $cek_profit*$jumlah;
  65.                                                 }
  66.                             $provider = $data_layanan['provider'];
  67.                                     //Get Start Count
  68.                                     if ($data_layanan['kategori'] == "Instagram Likes" AND "Instagram Likes Indonesia" AND "Instagram Likes [Targeted Negara]" AND "Instagram Likes/Followers Per Minute") {
  69.                                         $start_count = likes_count($target);
  70.                                     } else if ($data_layanan['kategori'] == "Instagram Followers No Refill/Not Guaranteed" AND "Instagram Followers Indonesia" AND "Instagram Followers [Negara]" AND "Instagram Followers [Refill] [Guaranteed] [NonDrop]" AND "Instagram Followers [ No Refill ]") {
  71.                                         $start_count = followers_count($target);
  72.                                     } else if ($data_layanan['kategori'] == "Instagram Views") {
  73.                                         $start_count = views_count($target);
  74.                                     } else {
  75.                                         $start_count = 0;
  76.                                     }
  77.                             if ($jumlah < $data_layanan['min']) {
  78.                                 $hasilnya = array('status' => false, 'data' => array('pesan' => 'Jumlah Pemesanan Minimal Tidak Sesuai'));
  79.                             } else if ($jumlah > $data_layanan['max']) {
  80.                                 $hasilnya = array('status' => false, 'data' => array('pesan' =>'Jumlah Pemesanan Maksimal Tidak Sesuai'));
  81.                             } else if ($datanya['saldo'] < $harga) {
  82.                                 $hasilnya = array('status' => false, 'data' => array('pesan' =>'Saldo Tidak Mencukupi'));
  83.                             } else {
  84.                                 $cek_provider = $conn->query("SELECT * FROM provider WHERE code = '$provider'");
  85.                                 $data_provider = $cek_provider->fetch_assoc();
  86.  
  87.      if ($provider == "MEDANPEDIA") {
  88.               if ($post_comments == false) {
  89.                 $postdata = array('api_id'   => $data_provider['api_id'],
  90.                                   'api_key'  => $data_provider['api_key'],
  91.                                   'service'  => $data_layanan['provider_id'],
  92.                                   'target'   => $target,
  93.                                   'quantity' => $jumlah
  94.                                  );
  95.                 } else if ($post_comments == true) {
  96.                 $postdata = array('api_id' => $data_provider['api_id'],
  97.                          'api_key'   => $data_provider['api_key'],
  98.                                   'service'   => $data_layanan['provider_id'],
  99.                                   'target'    => $target,
  100.                                   'custom_comments' => $post_comments
  101.                                  );
  102.                 }
  103.             $ch = curl_init();
  104.             curl_setopt($ch, CURLOPT_URL, $data_provider['link']);
  105.             curl_setopt($ch, CURLOPT_POST, 1);
  106.             curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
  107.             curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  108.             curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  109.             $chresult = curl_exec($ch);
  110.             curl_close($ch);
  111.             $json_result = json_decode($chresult, true);
  112.             } else {
  113.                 die("System Error!");
  114.             }
  115.  
  116.     if ($provider == "MEDANPEDIA" AND $json_result['status'] == false) {
  117.                                     $hasilnya = array('status' => false, 'data' => array('pesan' => ''.$json_result['data']));
  118.                                 } else {
  119.                                     if ($provider == "MEDANPEDIA") {
  120.                                         $provider_oid = $json_result['data']['id'];
  121.                                     }
  122.                                     if ($conn->query("INSERT INTO pembelian_sosmed VALUES ('','$order_id', '$provider_oid', '".$datanya['username']."', '".$data_layanan['layanan']."', '$target', '$jumlah', '$post_comments', '0', '$start_count', '$harga', '$profit', 'Pending', '$date', '$time', '$provider', 'API', '0')") == true) {
  123.                     $conn->query("UPDATE users SET saldo = saldo-$harga, pemakaian_saldo = pemakaian_saldo+$harga WHERE username = '".$datanya['username']."'");
  124.                     $conn->query("INSERT INTO history_saldo VALUES ('','".$datanya['username']."', 'Pengurangan Saldo', '$harga', 'Pemesanan Sosial Media Via API Dengan Order ID $order_id', '$date', '$time')"); 
  125.                                         $hasilnya = array('status' => true, 'data' => array('id' => $order_id, 'start_count' => $start_count));
  126.                                         } else {
  127.                                         $hasilnya = array('status' => false, 'data' => array('pesan' => 'System Error'));
  128.                                     }
  129.                                 }
  130.                             }
  131.                         }
  132.                     }
  133.                 } else {
  134.                     $hasilnya = array('status' => false, 'data' => array('pesan' => 'System Error nsp'));
  135.                     }
  136.             } else if ($aksinya == 'status') {
  137.                 if (isset($_POST['id'])) {
  138.                     $order_id = $conn->real_escape_string(trim($_POST['id']));
  139.                     $cek_pesanan = $conn->query("SELECT * FROM pembelian_sosmed WHERE oid = '$order_id' AND user = '".$datanya['username']."'");
  140.                     $data_pesanan = mysqli_fetch_array($cek_pesanan);
  141.                     if (mysqli_num_rows($cek_pesanan) == 0) {
  142.                         $hasilnya = array('status' => false, 'data' => array('pesan' => 'Order ID Tidak Di Temukan'));
  143.                     } else {
  144.                         $hasilnya = array('status' => true, 'data' => array("id" => $data_pesanan['oid'], 'status' => $data_pesanan['status'], 'start_count' => $data_pesanan['start_count'], 'remains' => $data_pesanan['remains']));
  145.                     }
  146.                 } else {
  147.                     $hasilnya = array('status' => false, 'data' => array('pesan' => 'Permintaan Tidak Sesuai'));
  148.                 }
  149.             } else if ($aksinya == 'layanan') {
  150.                     $cek_layanan = $conn->query("SELECT * FROM layanan_sosmed WHERE status = 'Aktif' ORDER BY service_id ASC");
  151.                     while($rows = mysqli_fetch_array($cek_layanan)){
  152.                     $hasilnya = "-";
  153.                     $this_data[] = array('sid' => $rows['service_id'], 'kategori' => $rows['kategori'], 'layanan' => $rows['layanan'], 'catatan' => $rows['catatan'], 'min' => $rows['min'], 'max' => $rows['max'], 'harga' => $rows['harga']);
  154.                 }
  155.                         $hasilnya = array('status' => true, 'data' => $this_data);
  156.             } else {
  157.                 $hasilnya = array('status' => false, 'data' => array('pesan' => 'Permintaan Salah'));
  158.             }
  159.         }
  160.         } else {
  161.             $hasilnya = array('status' => false, 'data' => array('pesan' => 'Api Key Salah'));
  162.         }
  163.     }
  164. } else {
  165.     $hasilnya = array('status' => false, 'data' => array('pesan' => 'Permintaan Tidak Sesuai'));
  166. }
  167.  
  168. print(json_encode($hasilnya, JSON_PRETTY_PRINT));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement