Advertisement
Guest User

saldo

a guest
Jul 20th, 2019
441
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.39 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4. * Code By : Diamond Pedia < diamondpedia@gmail.com >
  5. * Date Edit : 05 - 05 - 2019
  6. * Order Saldo OVO GOPAY
  7. **/
  8.  
  9. session_start();
  10. require("../mainconfig.php");
  11. $page_type = "Order Saldo";
  12. $untung = '1000';
  13.  
  14. if (isset($_SESSION['user'])) {
  15. $sess_username = $_SESSION['user']['username'];
  16. $check_user = $db->query("SELECT * FROM users WHERE username = '$sess_username'");
  17. $data_user = $check_user->fetch_array(MYSQLI_ASSOC);
  18. if ($check_user->num_rows == 0) {
  19. header("Location: ".$site_config['base_url']."user/logout");
  20. } else if ($data_user['status'] == "Suspended") {
  21. header("Location: ".$site_config['base_url']."user/logout");
  22. }
  23.  
  24. include("../lib/header.php");
  25. $msg_type = "nothing";
  26.  
  27. if (isset($_POST['order'])) {
  28.  
  29. $post_nomor = $db->real_escape_string(stripslashes(strip_tags(htmlspecialchars($_POST['nomor'], ENT_QUOTES))));
  30. $post_nominal = $db->real_escape_string(stripslashes(strip_tags(htmlspecialchars($_POST['nominal'], ENT_QUOTES))));
  31. $post_type = $db->real_escape_string(stripslashes(strip_tags(htmlspecialchars($_POST['tipe'], ENT_QUOTES))));
  32.  
  33. if( !in_array($post_type,["ovo","gopay"]) ){
  34. $msg_type = "error";
  35. $msg_content = "<b>Gagal!</b> Tipe order tidak diketahui.";
  36. }else{
  37.  
  38. $price = $post_nominal + $untung;
  39. $oid = random_number(3).random_number(4);
  40. if( $post_type == 'ovo' ){
  41. $service = 'Saldo OVO';
  42. }else{
  43. $service = 'Saldo Gopay';
  44. }
  45. if (empty($post_nomor) || empty($post_nominal) || empty($post_type)) {
  46. $msg_type = "error";
  47. $msg_content = "<b>Gagal!</b> Mohon mengisi input.";
  48. } else if ($data_user['balance'] < $price) {
  49. $msg_type = "error";
  50. $msg_content = "<b>Gagal:</b> Saldo Anda tidak mencukupi untuk melakukan pembelian ini.";
  51. } else {
  52.  
  53. $api_key = 'd6UJQQHXCNvc6YwFEa';
  54.  
  55. $order_postdata = "api_key=$api_key&tipe=$post_type&nomor=$post_nomor&nominal=$post_nominal";
  56. $ch = curl_init();
  57. curl_setopt($ch, CURLOPT_URL, "https://serverh2h.id/order/saldo");
  58. curl_setopt($ch, CURLOPT_POST, 1);
  59. curl_setopt($ch, CURLOPT_POSTFIELDS, $order_postdata);
  60. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  61. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  62. $chresult = curl_exec($ch);
  63. // echo $chresult;
  64. curl_close($ch);
  65. $order_data = json_decode($chresult, true);
  66. $trx = $order_data['code_trx'];
  67. $err_msg = $order_data['error'];
  68. if (!$trx) {
  69. $msg_type = "error";
  70. $msg_content = "<b>Gagal!</b> Server Rusak. ( ".$err_msg." )";
  71. } else {
  72. $poid = $trx;
  73. $update_user = $db->query("UPDATE users SET balance = balance-$price WHERE username = '$sess_username'");
  74. if ($update_user == TRUE) {
  75. $insert_order = $db->query("INSERT INTO orders_pulsa (oid, poid, user, service, link, price, status, date, provider, place_from) VALUES ('$oid', '$poid', '$sess_username', '$service', '$post_nomor', '$price', 'Pending', '$date', 'DPEDIA', 'WEB')");
  76. $insert_order = mysqli_query($db, "INSERT INTO balance_history (username, type, category, quantity, message, date, time) VALUES ('$sess_username', 'Minus', 'Place Order', '$price', 'Membuat pesanan #$oid', '$date', '$time')");
  77. if ($insert_order == TRUE) {
  78. $msg_type = "success";
  79. $msg_content = "<b>Pesanan telah diterima.</b><br /><b>Kode Pesanan:</b> $oid<br /><b>Layanan:</b> $service<br /><b>Jumlah:</b> ".number_format($post_nominal,0,',','.')."<br /><b>Biaya:</b> Rp ".number_format($price,0,',','.');
  80. } else {
  81. $msg_type = "error";
  82. $msg_content = "<b>Gagal!</b> Error system (2).";
  83. }
  84. } else {
  85. $msg_type = "error";
  86. $msg_content = "<b>Gagal!</b> Error system (1).";
  87. }
  88. }
  89. }
  90. }
  91. }
  92.  
  93.  
  94. $check_user = $db->query("SELECT * FROM users WHERE username = '$sess_username'");
  95. $data_user = $check_user->fetch_array(MYSQLI_ASSOC);
  96. ?>
  97. <div class="row">
  98. <div class="col-lg-12">
  99. <div class="alert alert-warning">
  100. <button aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
  101. <div scrollamount="10" align="left">
  102. <font color="black">
  103. <i class="mdi mdi-bullhorn"></i>
  104. <b class="text-uppercase">Penting!</b>
  105. <br>Halo <?php echo $sess_username; ?>, sebelum membuat pesanan disarankan untuk membaca
  106. <b>Informasi</b> terlebih dahulu. <b>Informasi</b> terletak disebelah kanan form pesanan
  107. <br> Terimakasih.
  108. </div>
  109. </div>
  110. <div class="row">
  111. <div class="col-lg-12">
  112. <font color="black">
  113. <table class="table table-bordered table-sm bg-white">
  114. <tbody>
  115. <tr>
  116. <th width="50%"><i class="mdi mdi-account-outline"></i> Username:</th>
  117. <td><?php echo $sess_username; ?></td>
  118. </tr>
  119. <tr>
  120. <th><i class="mdi mdi-cash-usd"></i> Sisa Saldo:</th>
  121. <td>Rp <?php echo number_format($data_user['balance'],0,',','.'); ?></td>
  122. </tr>
  123. </tbody>
  124. </table>
  125. </div>
  126. </div>
  127. <div class="row">
  128. <div class="offset-lg-3 col-lg-6">
  129. <div class="card-box">
  130. <ul class="nav nav-tabs tabs-bordered">
  131. <li class="nav-item">
  132. <a href="#charts-b1" data-toggle="tab" aria-expanded="false" class="nav-link active">
  133. Buat Pesanan
  134. </a>
  135. </li>
  136. <li class="nav-item">
  137. <a href="#information-b1" data-toggle="tab" aria-expanded="true" class="nav-link">
  138. Informasi
  139. </a>
  140. </li>
  141. </ul>
  142. <div class="tab-content">
  143. <div class="tab-pane fade show active" id="charts-b1">
  144. <?php
  145. if ($msg_type == "success") {
  146. ?>
  147. <div class="alert alert-success alert-dismissable">
  148. <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
  149. <?php echo $msg_content; ?>
  150. </div>
  151. <?php
  152. } else if ($msg_type == "error") {
  153. ?>
  154. <div class="alert alert-danger alert-dismissable">
  155. <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
  156. <?php echo $msg_content; ?>
  157. </div>
  158. <?php
  159. }
  160. ?>
  161. <form role="form" method="POST">
  162. <div class="row">
  163. <div class="col-md-12">
  164. <div class="form-group">
  165. <label>Tipe<font color="red">*</font></label>
  166. <select class="form-control" id="tipe" name="tipe">
  167. <option value="0">-- Pilih Tipe --</option>
  168. <option value="ovo">Saldo OVO</option>
  169. <option value="gopay">Saldo Gopay</option>
  170. </select>
  171. </div>
  172. </div>
  173. </div>
  174. <div id="note"></div>
  175. <div class="form-group">
  176. <label>Nomor Tujuan<font color="red">*</font></label>
  177. <div class="input-group">
  178. <div class="input-group-prepend">
  179. <span class="input-group-text">
  180. <i class="fa fa-link"></i>
  181. </span>
  182. </div>
  183. <input name="nomor" class="form-control" type="number">
  184. </div>
  185. <small>Nomor pengisian saldo</small>
  186. </div>
  187. <div class="row">
  188. <div class="col-md-6">
  189. <div class="form-group">
  190. <label>Jumlah<font color="red">*</font></label>
  191. <div class="input-group">
  192. <div class="input-group-append">
  193. <span class="input-group-text">
  194. <i class="mdi mdi-lightbulb-on"></i>
  195. </span>
  196. </div>
  197. <input type="number" name="nominal" class="form-control" placeholder="Jumlah" onkeyup="get_total(this.value).value;">
  198. </div>
  199. <small class="help-block">Masukkan total pembelian.</small>
  200. </div>
  201. </div>
  202. <input type="hidden" id="rate" value="0">
  203. <div class="col-md-6">
  204. <div class="form-group">
  205. <label>Total Harga<font color="red">*</font></label>
  206. <div class="input-group">
  207. <div class="input-group-append">
  208. <span class="input-group-text">
  209. Rp.
  210. </span>
  211. </div>
  212. <input type="number" class="form-control" id="total" value="0" readonly>
  213. </div>
  214. </div>
  215. <div class="form-group pull-right">
  216. <button type="submit" name="order" class="btn btn-square btn-primary"><i class="fa fa-check-circle"></i> Submit</button>
  217. <button type="reset" class="btn btn-square btn-secondary"><i class="fa fa-refresh"></i> Ulangi</button>
  218. </div>
  219. </div>
  220. </div>
  221. </form>
  222. </div>
  223. <div class="tab-pane fade" id="information-b1">
  224. Tata cara pengisian form pemesanan:
  225. <ul>
  226. <li>Pilih salah satu kategori pada <b>Kategori</b>, maka akan ditampilkan daftar layanan yang tersedia pada <b>Layanan</b>, silahkan pilih salah satu layanan.</li>
  227. <li>Masukkan data berupa username atau link pada <b>Data</b> sesuai permintaan yang ditampilkan setelah memilih layanan.</li>
  228. <li>Masukkan jumlah yang diinginkan pada <b>Jumlah</b>, maka akan ditampilkan total harga yang akan dibayar dengan saldo pada <b>Total harga</b>.</li>
  229. <li>Jika semua input sudah terisi dengan benar, klik <b>Kirim</b>. Pesanan akan diproses jika hasil yang ditampilkan setelah submit sukses.</li>
  230. <li>Jika pesanan <i>stuck</i>/tidak berubah status dari pending, Anda dapat menghubungi Admin melalui tiket.</li>
  231. </ul>
  232. Tata cara mengisi input <b>Data</b> yang sesuai:
  233. <ul>
  234. <li>Masukkan data berupa username atau link sesuai yang diminta.</li>
  235. <li>Pastikan akun target tidak berstatus <i>private</i>.</li>
  236. <li>Tidak ada pengembalian dana jika terjadi kesalahan pengisian data oleh pengguna.</li>
  237. </ul>
  238. </div>
  239. </div>
  240. </div>
  241. </div>
  242. <script type="text/javascript" src="https://code.jquery.com/jquery-1.10.2.js"></script>
  243. <script type="text/javascript">
  244.  
  245. function get_total(quantity) {
  246. var untung = parseFloat(<?php echo $untung ?>)
  247. var result = eval(quantity) + untung;
  248. $('#total').val(result);
  249. }
  250. </script>
  251. <?php
  252. include("../lib/footer.php");
  253. } else {
  254. header("Location: ".$site_config['base_url']);
  255. }
  256. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement