Здравствуйте! Я конечно знаю что на форуме слишком много подобного есть и решения в каких-то случаях но это уже что то не то! В общем, автовыплаты настроил апи в конфиге все работает, при запросе выдаёт ошибку, внутренняя ошибка сообщите о ней администратору. Деньги на балансе Пеер есть, лимит на остаток по счёту стоит от 1 рубля, просто не хочет и все.. Пробовал все файлы payment никакой не работает, может что то в других файлах надо проверить, и есть вероятность что это хостинг или нет? Стоит пока что на хостингере хочу попробовать на reg поставить проверить. Ну как то так, может кто поможет?
<?PHP
$_OPTIMIZATION["title"] = "ВЫПЛАТА";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' order by id DESC LIMIT 1");
$frompayments = $db->FetchArray();
$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();
$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
# Минималка золотом!
$minPay = 1;
# Настраиваем кол-во суток для ограничения.
$nd_time = 1;
?>
<h2>Вывод заработаных средств</h2>
<ul style="margin-bottom: 20px">
<li>Выводить средства теперь стало намного удобней.</li>
<li>Вывод средств длится от 1 мин. до 24 часов: в отдельных случаях может продлится до 3 дней.</li>
<li>Комиссия за обработку заявки на вывод средств составляет 0.05%.</li>
</ul>
<?PHP
function ViewPurse($purse){
if( substr($purse,0,1) != "P" ) return false;
if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
return $purse;
}
# Заносим выплату
if(isset($_POST["purse"])){
$purse = ViewPurse($_POST["purse"]);
$sum = intval($_POST["sum"]);
$val = "RUB";
if($purse !== false){
if($sum >= $minPay){
if($sum <= $user_data["money_p"]){
# Проверяем на существующие заявки
$db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND (status = '0' OR status = '1')");
if($db->FetchRow() == 0){
### Устанавливаем лимит на 24 часа по выплатам для $USID
if ($frompayments["date_add"] <= time() - $nd_time * 86400) {
### Делаем выплату ###
$payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
if ($payeer->isAuth())
{
$arBalance = $payeer->getBalance();
if($arBalance["auth_error"] == 0)
{
$sum_pay = round( ($sum / $sonfig_site["ser_per_wmr"]), 2);
$balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
if( ($balance) >= ($sum_pay)){
$arTransfer = $payeer->transfer(array(
'curIn' => 'RUB', // счет списания
'sum' => $sum_pay, // сумма получения
'curOut' => 'RUB', // валюта получения
'to' => $purse, // получатель (email)
//'to' => '+380992277900', // получатель (телефон)
//'to' => 'P2186234', // получатель (номер счета)
'comment' => iconv('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта 'Пираты Карибского Моря'.")
//'anonim' => 'Y', // анонимный перевод
//'protect' => 'Y', // протекция сделки
//'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
//'protectCode' => '1022678288', // код протекции
));
if (!empty($arTransfer["historyId"]))
{
# Снимаем с пользователя
$db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");
# Вставляем запись в выплаты
$da = time();
$dd = $da + 60*60*24*15;
$ppid = $arTransfer["historyId"];
$db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, payment_id, date_add, status)
VALUES ('$usname','$usid','$purse','$sum_pay','RUB', '$sum','$ppid','".time()."', '3')");
$db->Query("UPDATE db_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
$db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
echo "<center><font color = 'green'>Выплата успешно произведена!</font></center>
";
}
else
{
echo "<center><font color = 'red'>Системная ошибка, сообщите в Поддержку!</font></center>
";
}
}else echo "<center><font color = 'red'>Системная ошибка, сообщите в Поддержку!</font></center>
";
}else echo "<center><font color = 'red'>Сервер перегружен, попробуйте через 10-15 секунд!</font></center>
";
}else echo "<center><font color = 'red'>Выплаты не активированы!!</font></center>
";
}else echo "<center><font color = 'red'>Вы уже заказывали выплату в ближайшие 24 часа!</font></center>
";
}else echo "<center><font color = 'red'>У вас имеются необработанные заявки!</font></center>
";
}else echo "<center><font color = 'red'>У вас нету столько серебра!</font></center>
";
}else echo "<center><font color = 'red'>Минимальная сумма выплаты {$minPay} серебра!</font></center>
";
}else echo "<center><font color = 'red'>Кошелек PAYEER указан неверно!</font></center>
";
}
?>
<form action="" method="post">
<table width="99%" border="0" align="center">
<tr>
<td>Введите кошелек <font color="#696969">PAY</font><font color="#4169E1">EER</font> [Пример: <font color="red">P1000000</font>]: </td>
<td><input type="text" name="purse" size="15"/></td>
</tr>
<tr>
<td>Отдаете золото для вывода</font> [Минимум: <font color="red">500</font>]:</td>
<td><input type="text" name="sum" id="sum" value="<?=round($user_data["money_p"]); ?>" size="15" onkeyup="PaymentSum();" /></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="swap" value="Заказать выплату" /></td>
</tr>
</table>
</form>
</div></div></div></div>