РЕШЕНО Помогите исправить автовыплату

  • Автор темы Yuno
  • Дата начала
Yuno
Участник
Сообщения
22
Реакции
2
Всем привет!
Такая проблема, есть скрипт хайпа установил для теста, все прописал правильно, но возникла проблема с выплатами на QIWI и ЯД вылетает такая ошибка:

Ошибка [Array ( [pay_sys_no_isset] => Payment system does not exist or temporarily unavailable [cur_no_pay_sys] => Withdrawal to RUB is currently unavailable. Available currencies are ) ] - попробуйте через 20-30 секунд или сообщите о ней администратору!

Вот сам код выплат:

Код:
<?PHP
$_OPTIMIZATION["title"] = " Заказ выплаты";
$user_id = $_SESSION["user_id"];
$usname = $_SESSION["user"];

$db->Query("SELECT * FROM db_users_b WHERE id = '$user_id' LIMIT 1");
$user_data = $db->FetchArray();

$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$config_site = $db->FetchArray();

$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
# Минималка серебром!
$minPay = 100;
/*if($user_id != '1'){
    echo '<center><b><font color = "red">Ведутся технические работы</font></b></center><BR />';
    return;
}*/

?>
<BR />

<?
// глушим новичков от разворовывания бюджета :)
$sumClose = 20; // заглушка на 20 рублей

if($user_data["insert_sum"] < $sumClose){
$rest = $sumClose - $user_data["insert_sum"];
?>
<center class="alert alert-warning">Вы не можете заказать выплату!<p>Вам осталось пополнить игровой баланс на <?=$rest?> рублей!</center>
<BR /><BR />
 
<?PHP

return;
}

?>

<?PHP
# Заглушка запрещает выводить более 150 руб.
if($_POST["sum"] >= 15000){
?>
<center class="alert alert-warning">Максимальная сумма вывода доступная для Вас составляет <b>150 рублей!</b> за 24 часа.</center>
<?PHP
return;
}
?>
<center><font color="red"><h3>Сначала выберите платежную систему по иконке, затем введите номер счёта в форме ниже: </h3></font></center>
<BR />
<?PHP
# Заносим выплату
if(isset($_POST['swap'])){ // проверка: была ли отправлена форма
    if(!empty($_POST['purse'])){
        $ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'60792237',
        'ЯндексДеньги'=>'25344',
        'Билайн'=>'24898938',
        'Мегафон'=>'24899391',
        'МТС'=>'24899291',
        'ТЕЛЕ2'=>'95877310',
        'VISA' =>'117146509',
        'MASTERCARD' =>'57644634',
        'MAESTRO' =>'57766314'
        );
        $ps = $ps[$_POST['ps']];
        if(!empty($ps)){
            if($_POST['ps'] == 'Payeer'){
                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($_POST['ps'] == 'ЯндексДеньги'){
                function ViewPurse($purse){
                    if( !preg_match("#^41001[0-9]{7,10}$#",$purse) ) return false;
                    return $purse;
                }
                $minPay = '1000';
            }
            if($_POST['ps'] == 'QIWI'){
                function ViewPurse($purse){
                    if( !preg_match("#^\+(91|994|82|372|375|374|44|998|972|66|90|81|1|507|7|77|380|371|370|996|9955|992|373|84)[0-9]{6,14}$#",$purse) ) return false;
                    return $purse;
                }
                $minPay = '1000';
            }
            if(isset($_POST['phone']) && $_POST['ps'] != 'QIWI'){
                function ViewPurse($purse){
                    if( !preg_match("#^[\+]{1}[7]{1}[9]{1}[\d]{9}$#",$purse) ) return false;
                    return $purse;
                }
                $minPay = '1000';
            }
            
            if($_POST['ps'] == 'VISA'){
                function ViewPurse($purse){
                    if(!preg_match("#^([45]{1}[\d]{15}|[6]{1}[\d]{17})$#",$purse)) return false;
                    return $purse;
                }
            }
            if($_POST['ps'] == 'MASTERCARD'){
                function ViewPurse($purse){
                    if( !preg_match("#^([45]{1}[\d]{15}|[6]{1}[\d]{17})$#",$purse) ) return false;
                    return $purse;
                }
                
            }
            if($_POST['ps'] == 'MAESTRO'){
                function ViewPurse($purse){
                    if( !preg_match("#^([45]{1}[\d]{15}|[6]{1}[\d]{15,17})$#",$purse) ) return false;
                    return $purse;
                }
                
            }
            if(isset($_POST['card'])){
                $minPay = '650';
                function ViewPerson($person){
                    if( !preg_match("#^([a-zA-ZА-Яабвгдеёжзийклмнопрстуфхцчшщьыъэюя\.\-\' ]+)$#",$person) ) return false;
                    return $person;
                }
                $person = ViewPerson($_POST['person']);
            }
            $purse = ViewPurse($_POST['purse']);
            if($purse != false){
            if((!empty($person) AND $person != false) OR !isset($person)){
                $sum = round(intval($_POST['sum']),2);
                $val = 'RUB';
                if($sum >= $minPay){
                    if($sum <= $user_data['money_p']){
                    # Проверяем на существующие заявки
                        $db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$user_id' AND (status = '0' OR status = '1')");
                        if($db->FetchRow() == 0){
                            $sum_pay = round( ($sum / $config_site['ser_per_wmr']), 2);
                            if($user_data["pay_points"] >= $sum_pay){
                            # Делаем выплату
                                $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
                                if ($payeer->isAuth()){
                                    $arBalance = $payeer->getBalance();
                                    if($arBalance['auth_error'] == 0){
                                        $balance = $arBalance['balance']['RUB']['DOSTUPNO'];
                                        if($balance >= $sum_pay){
                                            $array = array(
                                                'action' => 'output',
                                                'ps' => $ps,
                                                'curIn' => $val, // счет списания
                                                'sumOut' => $sum_pay, // сумма получения
                                                'curOut' => $val, // валюта получения
                                                'param_ACCOUNT_NUMBER' => $purse // получатель
                                            );
                                            if(!empty($person)){
                                                $array['param_CONTACT_PERSON'] = $person;
                                            }
                                            $initOutput = $payeer->initOutput($array);
                                            if ($initOutput){
                                                $historyId = $payeer->output();
                                                    if ($historyId > 0){
                                                    # Снимаем с пользователя
                                                        $db->Query("UPDATE db_users_b SET money_p = money_p - '$sum', payment_sum = payment_sum + '$sum_pay', pay_points = pay_points - '$sum_pay' WHERE id = '$user_id'");
                                                        
                                                        # Вставляем запись в выплаты
                                                        $da = time();
                                                        $dd = $da + 60*60*24*15;
                                                        
                                                        $ppid = $arTransfer["historyId"];
                                                            
                                                        $db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, pay_sys_id, payment_id, date_add, status) VALUES ('$usname','$user_id','$purse','$sum_pay','RUB', '$sum', '$ps', '$ppid','".time()."', '3')");
                                                            
                                                        $db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
                                                        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
                                                        $db->Query("SELECT * FROM db_users_b WHERE id = '$user_id' LIMIT 1");
                                                        $user_data = $db->FetchArray();
                                                    }else{
                                                        echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через  20-30 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                                    }
                                            }else{
                                                echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 20-30 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                            }
                                        }else echo '<center><font color = "red"><b>Сервер перегружен - попробуйте через 10-30 секунд или сообщите о ней администратору</b></font></center><BR />';
                                    }else echo '<center><font color = "red"><b>Не удалось выплатить! Попробуйте позже.</b></font></center><BR />';
                                }else echo '<center><font color = "red"><b>Не удалось выплатить! Попробуйте позже. Ошибка № 631 </b></font></center><BR />';
                                  }else echo '<center><font color = "red"><b>У вас недостаточно <a href="/energy">Энергии!</a></b></font></center><BR />';
                            }else echo '<center><font color = "red"><b>У вас имеются необработанные заявки. Дождитесь их выполнения.</b></font></center><BR />';
                    }else echo '<center><font color = "red"><b>Вы указали больше, чем имеется на вашем счету.</b></font></center><BR />';
                }else echo '<center><b><font color = "red">Минимальная сумма для выплаты составляет '.$minPay.' руб!</font></b></center><BR />';
                }else echo '<center><b><font color = "red">Данные держателя карты указаны неверно!</font></b></center><BR />';
            }else echo '<center><b><font color = "red">Номер счета '.$purse.' указан неверно</font></b></center><BR />';
        }else echo '<center><b><font color = "red">Платежная система не указана!</font></b></center><BR />';
    }else echo '<center class="alert alert-danger"><b>Вы не ввели номер кошелька</b></center><BR />';
}
?>


<center><h3 style="margin: 10px;font-size: 18px;text-transform: uppercase;">Курс игровой валюты: <font color="#e55">100 монет = 1 РУБ!</font></h3></center>
<style>
    .selectPS{
    display: inline-block;
    width: 100px;
    vertical-align: top;
    text-align: center;
    padding: 5px 5px 10px 5px;
    margin: 5px 2px;
    text-transform: uppercase;
    background: #f8f9f9; border-radius: 4px;
    border: 1px solid #d7d7d7;
    cursor: pointer;
}
.selectPS:hover{
    border: 1px solid #0c6f84;
    background: #D1e0F8;
}
.selectPS .imagesps{
    width: 55px;
    box-sizing: border-box;
    height: 55px;margin: 0 auto;
    display: block;
}
.selectPS label{
    font-size: 8pt;
    display: block;
    margin-top: 10px;
}
</style>
<script type="text/javascript">
function addfield(ps,name){
    var el = document.getElementById('new');
    var el1 = document.getElementById('new1');
    var el2 = document.getElementById('new2');
    var el3 = document.getElementById('new3');
    if(el){el.parentNode.removeChild(el);}
    if(el1){el1.parentNode.removeChild(el1);}
    if(el2){el2.parentNode.removeChild(el2);}
    if(el3){el3.parentNode.removeChild(el3);}
    if(ps == 'phone'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<label>Номер телефона '+name+':</label>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input class="form-control" style="margin: 2px 0;" type="text" name="purse" size="15"><input type="hidden" name="ps" value="'+name+'"><input type="hidden" name="phone">';
        paysys.insertBefore(newTd, paysys.children[1]);
        min = 1000;
        document.getElementById('str_min').style.display = 'block';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
    if(ps == 'eps'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<label>Номер счета '+name+':</label>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" class="form-control" style="margin: 2px 0;" name="purse" size="15"><input type="hidden" name="ps" value="'+name+'">';
        paysys.insertBefore(newTd, paysys.children[1]);
        min = <?=$minPay;?>;
        if(name == 'Яндекс'){min = 1000;}
        document.getElementById('str_min').style.display = 'block';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }   
    if(ps == 'card'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<label>Номер карты '+name+':</label>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" class="form-control" name="purse" size="15"><input type="hidden" name="ps" value="'+name+'"><input type="hidden" name="card">';
        paysys.insertBefore(newTd, paysys.children[1]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new2';
        newTd.innerHTML = '<label>Имя, Фамилия держателя:</label>';
        person.insertBefore(newTd, person.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new3';
        newTd.innerHTML = '<input class="form-control" style="margin: 2px 0;" type="text" name="person" size="15">';
        person.insertBefore(newTd, person.children[1]);
        min = 65000;
        document.getElementById('str_min').style.display = 'block';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
}
</script>
    <div align="center" style="width: 700px;margin: 0 auto;">

                            <div class="selectPS" >
                            <div class="imagesps" style="background: url(/img/ps/payeer.png) no-repeat 50%;" onclick="addfield('eps','Payeer');"></div>
                            Payeer
                    </div>
                            <div class="selectPS" >
                            <div class="imagesps" style="background: url(/img/ps/qiwi.png) no-repeat 50%;" onclick="addfield('phone','QIWI');"></div>
                            QIWI
                    </div>
                            <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/yandex.png) no-repeat 50%;" onclick="addfield('eps','ЯндексДеньги');"></div>
                            Яндекс
                    </div>
                            <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/beeline.png) no-repeat 50%;" onclick="addfield('phone','Билайн');"></div>
                           БИЛАЙН
                    </div>
                                        <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/megafon.png) no-repeat 50%;" onclick="addfield('phone','Мегафон');"></div>
                           МЕГАФОН
                    </div>
                                        <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/mts.png) no-repeat 50%;" onclick="addfield('phone','МТС');"></div>
                            МТС
                    </div>
                                        <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/tele2.png) no-repeat 50%;" onclick="addfield('phone','ТЕЛЕ2');"></div>
                            ТЕЛЕ2
                    </div>
                                        <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/visa.png) no-repeat 50%;"  onclick="addfield('card','VISA');"></div>
                           VISA
                    </div>
                                        <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/master.png) no-repeat 50%;" onclick="addfield('card','MASTERCARD');"></div>
                            MASTERCARD
                    </div>
                                        <div class="selectPS">
                            <div class="imagesps" style="background: url(/img/ps/maestro.png) no-repeat 50%;" onclick="addfield('card','MAESTRO');"></div>
                             MAESTRO
                    </div>
                            
    </div>
<br/>
<?

# Заглушка от халявщиков
if($user_data["insert_sum"] >=0 OR $user_data["kredit"] >= 1){

?>
<div class="panel panel-default">
<div id="str_min" class="panel-heading" style="display:none;">Минимальная сумма выплаты на <b><span id="name_ps"></span></b> составляет <span id="min"></span> монет.</div>
<form action="" method="post">
<div class="panel-body">
<table id="pay"width="99%" style="max-width: 500px;" border="0" align="center">
  <tr id="paysys"></tr>
  <tr id="person"></tr>
  <tr>
    <td><label>Сумма для вывода:</label> </td>
    <td><div class="input-group" style="max-width: 150px;"><input class="form-control" type="text" name="sum" id="sum" value="<?=round($user_data['money_p']); ?>" size="15"><span class="input-group-addon">Монет </span></div></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
    <input class="btn btn-success" type="submit" name="swap" value="Заказать выплату" style="margin-top:10px;" /></td>
  </tr>
</table></div>
</form>
</div>
<?$minPay = '';?>

<center><label>Последние 10 выплат</label></center>
<table class="table table-bordered table-striped">
<thead>
    <td align="center" class="m-tb">Монеты</td>
    <td align="center" class="m-tb">Сумма</td>
    <td align="center" class="m-tb">Система</td>
    <td align="center" class="m-tb">Кошелек</td>
    <td align="center" class="m-tb">Дата</td>
    <td align="center" class="m-tb">Статус</td>
</thead>
  <?PHP
 
  $db->Query("SELECT * FROM db_payment WHERE user_id = '$user_id' ORDER BY id DESC LIMIT 10");
 
    if($db->NumRows() > 0){
    $img = Array(
        '1136053'=>'payeer',
        '60792237'=>'qiwi',
        '25344'=>'yandex',
        '24898938'=>'beeline',
        '24899391'=>'megafon',
        '24899291'=>'mts',
        '95877310'=>'tele2',
        '117146509' =>'visa',
        '57644634' =>'master',
        '57766314' =>'maestro'
        );
          while($ref = $db->FetchArray()){
        
        ?>
    <tr class="htt">
            <td align="center"><?=$ref["serebro"]; ?></td>
            <td align="center"><?=sprintf("%.2f",$ref["sum"] - $ref["comission"]); ?> <?=$ref["valuta"]; ?></td>
        <td align="center"><? if(!empty($ref["pay_sys_id"])){echo '<img src="/img/ps/'.$img[$ref["pay_sys_id"]].'.png" width="25px">';}?></td>
            <td align="center"><?=$ref["purse"]; ?></td>
        <td align="center"><?=date("d.m.Y",$ref["date_add"]); ?></td>
            <td align="center"><?=$status_array[$ref["status"]]; ?></td>
      </tr>
        <?PHP
        
        }
 
    }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
 
  ?>
</table>
<?PHP

return;
}

?>


<center class="alert alert-danger"><b>Вы не можете заказать выплату! </b><br/><small> Сумма ваших пополнений не более 20 рублей, Пожалуйста пополните баланс!<BR />
<a href="/insert"><b>Перейти к разделу</b></a> и пополнить баланс на необходимую сумму для возможности вывода средств.</small></center>


На Пейер и МТС выплачивает, проблема только с ЯД и КИВИ, баланс на кошельке есть.
 
pligin
Участник
Сообщения
3.654
Реакции
1.336
Telegram
pligin
Исправь идентификаторы платежных систем
PHP:
$ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'60792237',
        'ЯндексДеньги'=>'25344',
        'Билайн'=>'24898938',
        'Мегафон'=>'24899391',
        'МТС'=>'24899291',
        'ТЕЛЕ2'=>'95877310',
        'VISA' =>'117146509',
        'MASTERCARD' =>'57644634',
        'MAESTRO' =>'57766314'
        );
Актуальные идентификаторы найдешь в настройках массовых выплат в аккаунте Payeer
 
  • Like
Реакции: Yuno
Yuno
Участник
Сообщения
22
Реакции
2
аа, спасибо большое! пойду попробую.
 
Yuno
Участник
Сообщения
22
Реакции
2
pligin написал(а):
Исправь идентификаторы платежных систем
PHP:
$ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'60792237',
        'ЯндексДеньги'=>'25344',
        'Билайн'=>'24898938',
        'Мегафон'=>'24899391',
        'МТС'=>'24899291',
        'ТЕЛЕ2'=>'95877310',
        'VISA' =>'117146509',
        'MASTERCARD' =>'57644634',
        'MAESTRO' =>'57766314'
        );
Актуальные идентификаторы найдешь в настройках массовых выплат в аккаунте Payeer
Блин, а идентификатора QIWI нет, значит никак выплату на киви не подрубить?
 
pligin
Участник
Сообщения
3.654
Реакции
1.336
Telegram
pligin
Yuno написал(а):
Блин, а идентификатора QIWI нет, значит никак выплату на киви не подрубить?
да. ее отключили в Payeer
 
Yuno
Участник
Сообщения
22
Реакции
2
pligin написал(а):
да. ее отключили в Payeer
Эх, жаль, спасибо за помощь.
А не подскажете как "энергию" отключить на таком скрипте http://poker-money.com/? Хочу чтобы без этой жнергии было.
 
pligin
Участник
Сообщения
3.654
Реакции
1.336
Telegram
pligin
Yuno написал(а):
Эх, жаль, спасибо за помощь.
А не подскажете как "энергию" отключить на таком скрипте http://poker-money.com/? Хочу чтобы без этой жнергии было.
один вопрос - одна тема
 
Сверху