РЕШЕНО Не пополняется баланс пользователя сайта.

Статус
Закрыто для дальнейших ответов.

frigiec

Участник
Всем доброго времени суток. Друзья если не сложно помогите мне решить мою проблему. Купил скрипт хайпа удвоителя Всё подключил , payeer мерчант одобрил. Попробовал сделать пополнение баланса с тестового аккаунта-но не тут то было.... Деньги со счёта заказчика списываются на счёт админа приходят,но вот на баланс тестового пользователя не зачисляются (как был ноль так и остался). В мерчанте ссылки обработчика и ссылки оплаты прописал правильно.Что интересно и в базе данных тоже пополнение не отображается . Если не сложно предложите свои идеи,где и чего рыть для исправления данного глюка?
 

Invictus

Местный
Всем доброго времени суток. Друзья если не сложно помогите мне решить мою проблему. Купил скрипт хайпа удвоителя Всё подключил , payeer мерчант одобрил. Попробовал сделать пополнение баланса с тестового аккаунта-но не тут то было.... Деньги со счёта заказчика списываются на счёт админа приходят,но вот на баланс тестового пользователя не зачисляются (как был ноль так и остался). В мерчанте ссылки обработчика и ссылки оплаты прописал правильно.Что интересно и в базе данных тоже пополнение не отображается . Если не сложно предложите свои идеи,где и чего рыть для исправления данного глюка?
нужно смотреть в мерчанте запрос на внесение обновленй данных в базу после платежа, у вас видимо его нет раз в базе данных пополнение не отображается
 

frigiec

Участник
Если Вам не будет затруднительно, можно чуть поподробнее. Где именно смотреть?
 

frigiec

Участник
Код:
<?php
include('../conf.php');
if ($_SERVER['REMOTE_ADDR'] != '37.59.221.230') return;
if (isset($_POST['m_operation_id']) && isset($_POST['m_sign']))
{
$pa = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT ke FROM t_data LIMIT 1"));
$m_key = $pa['123abc'];
$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'],
$m_key);
$sign_hash = strtoupper(hash('sha256', implode(':', $arHash)));
if ($_POST['m_sign'] == $sign_hash && $_POST['m_status'] == 'success')
{
$dt = time();
$pa = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT id,usr FROM t_in WHERE ba = '$_POST[m_orderid]' AND st = '0' LIMIT 1"));
$usr = $pa['usr'];
if ($usr > 0) {
mysqli_query($connect_db, "UPDATE `t_users` SET `bal` = `bal`+'$_POST[m_amount]' WHERE uid = '$usr'");
mysqli_query($connect_db, "UPDATE `t_in` SET `st` = '1' WHERE ba = '$_POST[m_orderid]' LIMIT 1");
}
echo $_POST['m_orderid'].'|success';
exit;
}
echo $_POST['m_orderid'].'|error';
}
?>
 

pligin

Команда форума
Администратор
if ($_SERVER['REMOTE_ADDR'] != '37.59.221.230') return;
у Payeer несколько серверов оповещений и такого IP адреса у них нет.
вместо этого бреда нужно написать следющее
PHP:
if (!in_array($_SERVER['REMOTE_ADDR'], array('185.71.65.92', '185.71.65.189', '149.202.17.210'))) die('ERROR IP');
$pa = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT ke FROM t_data LIMIT 1")); $m_key = $pa['123abc'];
ту извлекается значение поля "ke", а дальше используется "123abc"... интересно откуда мог взяться параметр "123abc" в массиве $pa...
 

frigiec

Участник
у Payeer несколько серверов оповещений и такого IP адреса у них нет.
вместо этого бреда нужно написать следющее
PHP:
if (!in_array($_SERVER['REMOTE_ADDR'], array('185.71.65.92', '185.71.65.189', '149.202.17.210'))) die('ERROR IP');
ту извлекается значение поля "ke", а дальше используется "123abc"... интересно откуда мог взяться параметр "123abc" в массиве $pa...

"123abc" это Секретный ключ(он у меня другой а здесь указан старый с купленного скрипта)
 

frigiec

Участник
Подскажи пожалуйста что на что именно нужно ещё заменить? if ($_SERVER['REMOTE_ADDR'] != '37.59.221.230') return; - уже исправил...
 
Статус
Закрыто для дальнейших ответов.
Верх