Файл: 100loto.best/Payeer/status.php
Строк: 26
<?php
include'../inc/base.php';
$my_id=$user['id'];
// Отклоняем запросы с IP-адресов, которые не принадлежат Payeer
if (!in_array($_SERVER['REMOTE_ADDR'], array('185.71.65.92', '185.71.65.189','149.202.17.210'))) return;
if (isset($_POST['m_operation_id']) && isset($_POST['m_sign'])) {
$m_key = 'naitep624837';
// Формируем массив для генерации подписи
$arHash = array($_POST['m_operation_id'],$_POST['m_operation_ps'],$_POST['m_operation_date'],$_POST['m_operation_pay_date'],$_POST['m_shop'],$_POST['m_orderid'],$_POST['m_amount'],$_POST['m_curr'],$_POST['m_desc'],$_POST['m_status']);
// Если были переданы дополнительные параметры, то добавляем их в массив
if (isset($_POST['m_params']))
{
$arParams = json_decode($_POST['m_params'], true);
$arReference = $arParams['reference'];
$arHash[] = $_POST['m_params'];
}
// Добавляем в массив секретный ключ
$arHash[] = $m_key;
// Формируем подпись
$sign_hash = strtoupper(hash('sha256', implode(':', $arHash)));
// Если подписи совпадают и статус платежа “Выполнен”
if ($_POST['m_sign'] == $sign_hash && $_POST['m_status'] == 'success')
{
$sum=$_POST['m_amount'];
//Начисляем
$db->query("UPDATE `users` SET `balans`=`balans` + '".$sum."' WHERE `id`='".$arReference['var1']."' ");
$db->query("INSERT INTO `payeer` SET `order_id`='".$_POST['m_orderid']."', `user_id`='".$arReference['var1']."', `amount`='".$_POST['m_amount']."', `status`='yes', `time`='".time()."' ");
// Возвращаем, что платеж был успешно обработан
exit($_POST['m_orderid'].'|success');
}
// В противном случае возвращаем ошибку
exit($_POST['m_orderid'].'|error');}