Advertisement
Guest User

Untitled

a guest
Aug 20th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.78 KB | None | 0 0
  1. <?php
  2. session_start();
  3. require("../mainconfig.php");
  4. $page_type = "sosmed";
  5.  
  6. if (isset($_SESSION['user'])) {
  7. $sess_username = $_SESSION['user']['username'];
  8. $check_user = mysqli_query($db, "SELECT * FROM users WHERE username = '$sess_username'");
  9. $data_user = mysqli_fetch_assoc($check_user);
  10. if (mysqli_num_rows($check_user) == 0) {
  11. header("Location: ".$cfg_baseurl."logout.php");
  12. } else if ($data_user['status'] == "Suspended") {
  13. header("Location: ".$cfg_baseurl."logout.php");
  14. }
  15.  
  16. include("../lib/header.php");
  17. $msg_type = "nothing";
  18.  
  19. if (isset($_POST['order'])) {
  20. $post_service = $_POST['service'];
  21. $post_quantity = $_POST['quantity'];
  22. $post_link = trim($_POST['link']);
  23. $post_category = $_POST['category'];
  24. $check_service = mysqli_query($db, "SELECT * FROM services WHERE sid = '$post_service' AND status = 'Active'");
  25. $data_service = mysqli_fetch_assoc($check_service);
  26.  
  27. $check_orders = mysqli_query($db, "SELECT * FROM orders WHERE link = '$post_link' AND status IN ('Pending','Processing')");
  28. $data_orders = mysqli_fetch_assoc($check_orders);
  29. $rate = $data_service['price'] / 1000;
  30. $price = $rate*$post_quantity;
  31. $oid = random_number(3).random_number(4);
  32. $service = $data_service['service'];
  33. $provider = $data_service['provider'];
  34. $pid = $data_service['pid'];
  35.  
  36. $check_provider = mysqli_query($db, "SELECT * FROM provider WHERE code = '$provider'");
  37. $data_provider = mysqli_fetch_assoc($check_provider);
  38.  
  39. if (empty($post_service) || empty($post_link) || empty($post_quantity)) {
  40. $msg_type = "error";
  41. $msg_content = "<b>Gagal:</b> Mohon mengisi input.";
  42. } else if (mysqli_num_rows($check_orders) == 1) {
  43. $msg_type = "error";
  44. $msg_content = "<b>Gagal:</b> Terdapat Orderan Username Yang Sama Dan berstatus Pending/Processing.";
  45. } else if (mysqli_num_rows($check_service) == 0) {
  46. $msg_type = "error";
  47. $msg_content = "<b>Gagal:</b> Layanan tidak ditemukan.";
  48. } else if (mysqli_num_rows($check_provider) == 0) {
  49. $msg_type = "error";
  50. $msg_content = "<b>Gagal:</b> Server Maintenance.";
  51. } else if ($post_quantity < $data_service['min']) {
  52. $msg_type = "error";
  53. $msg_content = "<b>Gagal:</b> Jumlah minimal adalah ".$data_service['min'].".";
  54. } else if ($post_quantity > $data_service['max']) {
  55. $msg_type = "error";
  56. $msg_content = "<b>Gagal:</b> Jumlah maksimal adalah ".$data_service['max'].".";
  57. } else if ($data_user['balance'] < $price) {
  58. $msg_type = "error";
  59. $msg_content = "<b>Gagal:</b> Saldo Anda tidak mencukupi untuk melakukan pembelian ini.";
  60. } else {
  61.  
  62. // api data
  63. $api_link = $data_provider['link'];
  64. $api_key = $data_provider['api_key'];
  65. // end api data
  66.  
  67. if ($provider == "MANUAL") {
  68. $api_postdata = "";
  69. } else if ($provider == "MEDANPEDIA") {
  70. $postdata = "api_key=uXYVIO3zrJP4CUE70tiwHBjkMDWKLZ&action=order&service=$pid&data=$post_link&quantity=$post_quantity";
  71. $ch = curl_init();
  72. curl_setopt($ch, CURLOPT_URL, 'https://medanpedia.co.id/api/json.php');
  73. curl_setopt($ch, CURLOPT_POST, 1);
  74. curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
  75. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  76. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  77. $chresult = curl_exec($ch);
  78. curl_close($ch);
  79. $json_result = json_decode($chresult);
  80.  
  81. }
  82.  
  83. if ($provider != "MEDANPEDIA" AND $json_result->status == false) {
  84. $msg_type = "error";
  85. $msg_content = $json_result->data->msg. "";
  86. } else {
  87. if ($provider == "MEDANPEDIA") {
  88. $poid = $json_result['data']['id'];
  89. }
  90. $update_user = mysqli_query($db, "UPDATE users SET balance = balance-$price WHERE username = '$sess_username'");
  91. if ($update_user == TRUE) {
  92. $insert_order = mysqli_query($db, "INSERT INTO orders (oid, poid, user, service, link, quantity, price, status, date, provider, place_from) VALUES ('$oid', '$poid', '$sess_username', '$service', '$post_link', '$post_quantity', '$price', 'Pending', '$date', '$provider', 'WEB')");
  93. if ($insert_order == TRUE) {
  94. $msg_type = "success";
  95. $msg_content = "<b>Pesanan telah diterima.</b><br /><b>Layanan:</b> $service<br /><b>Link:</b> $post_link<br /><b>Jumlah:</b> ".number_format($post_quantity,0,',','.')."<br /><b>Biaya:</b> Rp ".number_format($price,0,',','.');
  96. } else {
  97. $msg_type = "error";
  98. $msg_content = "<b>Gagal:</b> Error system (2).";
  99. }
  100. } else {
  101. $msg_type = "error";
  102. $msg_content = "<b>Gagal:</b> Error system (1).";
  103. }
  104. }
  105. }
  106. }
  107.  
  108. $check_user = mysqli_query($db, "SELECT * FROM users WHERE username = '$sess_username'");
  109. $data_user = mysqli_fetch_assoc($check_user);
  110. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement