Файл: rayb.me/pay/buy.php
Строк: 127
<?php
require_once '../system/func.php';
include_once '../system/createform.php';
include_once '../system/class.wallet.php';
auth();
antihack();
$title = 'Купить Рубинов';
include_once '../system/header.php';
$transaction = mysqli_fetch_assoc(DB::Query("SELECT `amount`, `code`, `status`, `date` FROM `transactions` WHERE `id_user` = '" . $user['id'] . "' AND `status` = 0"));
$form = [
'key' => '48e7qUxn9T7RyYE1MVZswX1FRSbE6iyCj2gCRwwF3Dnh5XrasNTx3BGPiMsyXQFNKQhvukniQG8RTVhYm3iPpUeKTJyVF22GckyRMuTWnvfydStohiCL4epSX8ZwvR78Kwz7JsahZi9bHtBWS5U6oUZmjG6yEDu5J4meVt51S3sgd7PLKv6iktChJj2pT',// public токен P2P для формирования формы олпаты. Получить можно тут https://qiwi.com/p2p-admin/transfers/api
'theme' => 'ALEKSANDR-RfEXEF66UJ', // Имя шаблона для формы оплаты. Создать нужно здесь https://qiwi.com/p2p-admin/transfers/link скопировать название themeCode
'amount' => isset($_POST['amount']) ? (int)$_POST['amount'] : null,
'method' => isset($_POST['method']) ? trim($_POST['method']) : null,
'code' => 'Rayb.Me-qiwi-'.$user['login'].'-'.uniqid(),
'error' => [],
];
if(isset($_POST['payment'])){
if(empty($form['amount'])){
$form['error']['amount'] = 'Введите сумму пополнения.';
}elseif($form['amount'] < 1){
$form['error']['amount'] = 'Минимум 1 рубль.';
}elseif(!is_numeric($_POST['amount'])){
$form['error']['amount'] = 'Неккоректная сумма.';
}
if(empty($form['method'])){
$form['error']['method'] = 'Не выбран способ оплаты.';
}
if(count($form['error']) == 0){
DB::Query("INSERT INTO `transactions` SET `id_user` = '".$user['id']."', `amount` = '".$form['amount']."', `code` = '".$form['code']."', `status` = 0");
go(createPaymentForm($form['key'], $form['theme'], $form['amount'], $form['method'], $form['code']));
}
}
if(isset($_GET['cancel'])){
DB::Query("DELETE FROM `transactions` WHERE `id_user` = '".$user['id']."' ORDER BY `id` DESC LIMIT 1");
$_SESSION['response'] = 'Счет отменен.';
go('buy.php');
}
if(isset($_GET['success'])){
$wallet = new Wallet('375336667556', 'ba8236fbd06f5dae94cf676abad0e5b0'); // // Номер кошелька киви на который будет приниматься оплата и токен от кошелька (Поставить галочку только на просмотр платежей). Получить нужно тут https://qiwi.com/api
$payments = $wallet->getPayments();
$data = [];
foreach($payments as $key => $payment){
if(isset($payment['comment']) and isset($transaction['code'])){
if($payment['comment'] == $transaction['code']){
if(!empty($payment['sum']['amount'])){
$data['total'] = $payment['sum']['amount'];
}else{
$data['total'] = null;
}
}
}
}
if(isset($data['total']) and isset($transaction['amount']) != null){
if($data['total'] != $transaction['amount']){
$_SESSION['error'] = 'Ошибка оплаты. Свяжитесь с администрацией.';
go('?');
}else{
DB::Query("UPDATE `transactions` SET `status` = 1 WHERE `id_user` = '" . $user['id'] . "'");
DB::Query("UPDATE `users` SET `ruby` = `ruby` + '".($data['total'] * 20)."' WHERE `id` = '".$user['id']."'");
$_SESSION['response'] = 'Оплата получена. На баланс зачислено '.($data['total'] * 20).' рубинов.';
go('buy.php');
}
}else{
$_SESSION['error'] = 'По вашему счету не получена оплата. Свяжитесь с администратором.';
go('buy.php');
}
}
?>
<a href="/profile.php"><?= $user['name'] ?></a> | Покупка монет Qiwi<br>
<? if(isset($_SESSION['response'])): ?>
<div class="foot"><?= $_SESSION['response'] ?></div>
<? unset($_SESSION['response']) ?>
<? endif; ?>
<? if(isset($_SESSION['error'])): ?>
<div class="foot"><?= $_SESSION['error'] ?></div>
<? unset($_SESSION['error']) ?>
<? endif; ?>
<div class="nav1">
<b>На вашем счету:</b>
<br>
<b>
<font color="green"><?= $user['ruby'] ?></font>
</b>
<br>
<b>Курc</b>:
<br>
1 рубль = 20 рубинам
</div>
<div class="nav2">
<? if(isset($transaction['status']) < 1): ?>
<form action="buy.php" method="post">
Сумма (в рублях):
<br>
<input name="amount" type="text" value="1">
<? if(isset($form['error']['amount'])): ?>
<br>
<font color="red"><?= $form['error']['amount'] ?></font>
<? endif; ?>
<br>
Способ оплаты:
<br>
<select name="method">
<option value="qw">Qiwi кошелек</option>
<option value="card">Банковская карта</option>
<option value="mobile">Оплата с мобильного</option>
</select>
<? if(isset($form['error']['method'])): ?>
<br>
<font color="red"><?= $form['error']['method'] ?></font>
<? endif; ?>
<br>
<input name="payment" type="submit" value="Перейти к оплате">
<br>
</form>
<? else: ?>
<b>Неоплаченый счет</b>
<br>
Сумма: <?= $transaction['amount'] ?> руб.
<br>
Создан: <?= date('d.m.Y в H:i', strtotime($transaction['date'])) ?>
<br>
<a href="buy.php?cancel">Отменить счет</a>
<? endif; ?>
</div>
<?
include_once '../system/footer.php';