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

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
5
Реакции
6
Доброго времени суток!
Столкнулся с проблемой при автовыплатах.
После авто выплаты баланс не изменяется (для вывода)
Вот payment.php
Код:
<div class="acc-title"><img src="/img/withdraw.jpg"></div>

<div class="descr">
Для вывода средств используются <b>сестерции</b>. <?=$sonfig_site["ser_per_wmr"]; ?> 10 сестерциев = 1 рубль.<br><br>
Выплаты осуществляются <b>автоматически</b> сразу на твой кошелёк!<br><br>
Для безопасности на кошельках игры содержится сумма эквивалентная средней суточной сумме на выплаты. Если ты заказал выплату и она получила статус "В ожидании", значит суточный лимит закончился и твоя выплата будет обработана в ручную в ближайшее время.
<br><br>
Минимальная сумма для вывода - <b>100</b> сестерциев.<br>
Максимальная сумма для вывода - <b>10 000</b> сестерциев.
</div>
<div class="decor"></div>

<div class="s-bk-lf">
    <div class="acc-title"></div>
</div>
<div class="silver-bk">
    <BR />
<?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;
}*/
?>

<?PHP
# Заглушка от халявщиков
if($user_data["insert_sum"] <= 14.99 AND $user_data["from_referals"] <=1.99){

?>
<center><font color="red"><b>Выплату могут заказывать пользователи, которые пополнили баланс минимум на 15 RUB, т.к. мы не любим халявщиков.<br></font></center>

<div class="clr"></div>
</div>
<?PHP

return;
}

?>



<?PHP






# Заносим выплату
if(isset($_POST['swap'])){ // проверка: была ли отправлена форма
    if(!empty($_POST['purse'])){
        $ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'26808',
        'yandex'=>'57378077',
        'beeline'=>'24898938',
        'megafon'=>'24899391',
        'mts'=>'24899291',
        'tele2'=>'95877310',
        'VISA' =>'57568699',
        '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,15}$#", substr($purse,1)) ) return false;   
                    return $purse;
                }
            }
            if($_POST['ps'] == 'yandex'){
                function ViewPurse($purse){
                    if( !preg_match("#^41001[0-9]{7,11}$#",$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,15}$#",$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 = '65000';
                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){
                            
                            
                          

                            # Делаем выплату
                                $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 / $config_site["ser_per_wmr"]), 2);   
                                        
                                        $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' 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'><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).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                                    }
                                            }else{
                                                echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                            }
                                        }else echo '<center><font color = "red"><b>Сервер перегружен - попробуйте через 10-15 секунд или сообщите о ней администратору</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>У вас имеются необработанные заявки. Дождитесь их выполнения.</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><b><font color = "red">Вы не ввели номер кошелька</font></b></center><BR />';
}
?>
<style>
    .selectPS{
    display: inline-block;
    width: 100px;
    vertical-align: top;
    text-align: center;
    padding: 5px 5px 10px 5px;
    margin: 5px 2px;
    border: 2px dotted #fff4e3;
    cursor: pointer;
}
.selectPS:hover{
    border: 2px dotted #cb8851;
    background: #fde6c3;
}
.selectPS .imagesps{
    width: 55px;
    box-sizing: border-box;
    height: 55px;
    display: inline-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 = '<font color="#000;">Номер телефона '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
    if(ps == 'eps'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер счета '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }   
    if(ps == 'card'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер карты '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = '<font color="#000;">Имя, Фамилия держателя:</font>';
        person.insertBefore(newTd, person.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new3';
        newTd.innerHTML = '<input type="text" name="person" size="15">';
        person.insertBefore(newTd, person.children[1]);
        min = 65000;
        document.getElementById('str_min').style.display = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
}
</script>
    <div align="center">

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

<br>
                    

<br>                   

                            
    </div>
<div id="str_min" style="display:none">Минимальная сумма выплаты на <span id="name_ps"></span> составляет <span id="min"></span> серебра.</div><br>
<form action="" method="post">
<table id="pay"width="99%" border="0" align="center">
  <tr id="paysys"></tr>
  <tr id="person"></tr>
  <tr>
    <td><font color="#000;">Сумма для вывода</font><font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=round($user_data['money_p']); ?>" size="15"></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
    <input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<?$minPay = '';?>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
<center><h4>Последние 10 выплат</h4></center></td>
    </tr>
  <tr>
    <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>
  </tr>
  <?PHP
 
  $db->Query("SELECT * FROM db_payment WHERE user_id = '$user_id' ORDER BY id DESC LIMIT 20");
 
    if($db->NumRows() > 0){
    $img = Array(
        '1136053'=>'payeer',
        '26808'=>'qiwi',
        '57378077'=>'yandex',
        '24898938'=>'beeline',
        '24899391'=>'megafon',
        '24899291'=>'mts',
        '95877310'=>'tele2',
        '57568699' =>'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><div class="clr"></div>
</div>
 
pligin
Участник
Сообщения
3.654
Реакции
1.336
Telegram
pligin
Алексей Русских написал(а):
Доброго времени суток!
Столкнулся с проблемой при автовыплатах.
После авто выплаты баланс не изменяется (для вывода)
Вот payment.php
Код:
<div class="acc-title"><img src="/img/withdraw.jpg"></div>

<div class="descr">
Для вывода средств используются <b>сестерции</b>. <?=$sonfig_site["ser_per_wmr"]; ?> 10 сестерциев = 1 рубль.<br><br>
Выплаты осуществляются <b>автоматически</b> сразу на твой кошелёк!<br><br>
Для безопасности на кошельках игры содержится сумма эквивалентная средней суточной сумме на выплаты. Если ты заказал выплату и она получила статус "В ожидании", значит суточный лимит закончился и твоя выплата будет обработана в ручную в ближайшее время.
<br><br>
Минимальная сумма для вывода - <b>100</b> сестерциев.<br>
Максимальная сумма для вывода - <b>10 000</b> сестерциев.
</div>
<div class="decor"></div>

<div class="s-bk-lf">
    <div class="acc-title"></div>
</div>
<div class="silver-bk">
    <BR />
<?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;
}*/
?>

<?PHP
# Заглушка от халявщиков
if($user_data["insert_sum"] <= 14.99 AND $user_data["from_referals"] <=1.99){

?>
<center><font color="red"><b>Выплату могут заказывать пользователи, которые пополнили баланс минимум на 15 RUB, т.к. мы не любим халявщиков.<br></font></center>

<div class="clr"></div>
</div>
<?PHP

return;
}

?>



<?PHP






# Заносим выплату
if(isset($_POST['swap'])){ // проверка: была ли отправлена форма
    if(!empty($_POST['purse'])){
        $ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'26808',
        'yandex'=>'57378077',
        'beeline'=>'24898938',
        'megafon'=>'24899391',
        'mts'=>'24899291',
        'tele2'=>'95877310',
        'VISA' =>'57568699',
        '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,15}$#", substr($purse,1)) ) return false;  
                    return $purse;
                }
            }
            if($_POST['ps'] == 'yandex'){
                function ViewPurse($purse){
                    if( !preg_match("#^41001[0-9]{7,11}$#",$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,15}$#",$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 = '65000';
                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){
                           
                           
                         

                            # Делаем выплату
                                $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 / $config_site["ser_per_wmr"]), 2);  
                                       
                                        $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' 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'><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).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                                    }
                                            }else{
                                                echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                            }
                                        }else echo '<center><font color = "red"><b>Сервер перегружен - попробуйте через 10-15 секунд или сообщите о ней администратору</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>У вас имеются необработанные заявки. Дождитесь их выполнения.</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><b><font color = "red">Вы не ввели номер кошелька</font></b></center><BR />';
}
?>
<style>
    .selectPS{
    display: inline-block;
    width: 100px;
    vertical-align: top;
    text-align: center;
    padding: 5px 5px 10px 5px;
    margin: 5px 2px;
    border: 2px dotted #fff4e3;
    cursor: pointer;
}
.selectPS:hover{
    border: 2px dotted #cb8851;
    background: #fde6c3;
}
.selectPS .imagesps{
    width: 55px;
    box-sizing: border-box;
    height: 55px;
    display: inline-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 = '<font color="#000;">Номер телефона '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
    if(ps == 'eps'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер счета '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }  
    if(ps == 'card'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер карты '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = '<font color="#000;">Имя, Фамилия держателя:</font>';
        person.insertBefore(newTd, person.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new3';
        newTd.innerHTML = '<input type="text" name="person" size="15">';
        person.insertBefore(newTd, person.children[1]);
        min = 65000;
        document.getElementById('str_min').style.display = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
}
</script>
    <div align="center">

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

<br>
                   

<br>                  

                           
    </div>
<div id="str_min" style="display:none">Минимальная сумма выплаты на <span id="name_ps"></span> составляет <span id="min"></span> серебра.</div><br>
<form action="" method="post">
<table id="pay"width="99%" border="0" align="center">
  <tr id="paysys"></tr>
  <tr id="person"></tr>
  <tr>
    <td><font color="#000;">Сумма для вывода</font><font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=round($user_data['money_p']); ?>" size="15"></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
    <input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<?$minPay = '';?>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
<center><h4>Последние 10 выплат</h4></center></td>
    </tr>
  <tr>
    <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>
  </tr>
  <?PHP

  $db->Query("SELECT * FROM db_payment WHERE user_id = '$user_id' ORDER BY id DESC LIMIT 20");

    if($db->NumRows() > 0){
    $img = Array(
        '1136053'=>'payeer',
        '26808'=>'qiwi',
        '57378077'=>'yandex',
        '24898938'=>'beeline',
        '24899391'=>'megafon',
        '24899291'=>'mts',
        '95877310'=>'tele2',
        '57568699' =>'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><div class="clr"></div>
</div>
это мой модуль с этого форума. с удовольствием помогу, если Вы будете "Местным". А будете "Местным", то сможете сами скачать последнюю актуальную версию
 
kolyaka1051
Местный
Сообщения
77
Реакции
19
Telegram
kolyaka105
Сделай что бы переменная
Код:
$user_id = $_SESSION["user_id"];
Называлась так:
Код:
$usid = $_SESSION["user_id"];
И все должно работать)
 
Сообщения
5
Реакции
6
kolyaka105 написал(а):
Сделай что бы переменная
Код:
$user_id = $_SESSION["user_id"];
Называлась так:
Код:
$usid = $_SESSION["user_id"];
И все должно работать)
Вставил, но теперь вообще не могу вывести
Пишет Вы указали больше, чем имеется на вашем счету. . Хотя на счету для вывода 11099999 . а минималка на вывод стоит 100 монет
 
kolyaka1051
Местный
Сообщения
77
Реакции
19
Telegram
kolyaka105
Нельзя выводить на свой кошелек
и ещё возможно нету денег на кошельке
 
Сообщения
5
Реакции
6
kolyaka105 написал(а):
Нельзя выводить на свой кошелек
и ещё возможно нету денег на кошельке
Деньги есть на кошельке, в 6 раз больше чем запрашиваю)
конечно же я на другой вывожу кошелек, на кошелек жены))
 
kolyaka1051
Местный
Сообщения
77
Реакции
19
Telegram
kolyaka105
Держи замени весь код:
Код:
<div class="acc-title"><img src="/img/withdraw.jpg"></div>

<div class="descr">
Для вывода средств используются <b>сестерции</b>. <?=$sonfig_site["ser_per_wmr"]; ?> 10 сестерциев = 1 рубль.<br><br>
Выплаты осуществляются <b>автоматически</b> сразу на твой кошелёк!<br><br>
Для безопасности на кошельках игры содержится сумма эквивалентная средней суточной сумме на выплаты. Если ты заказал выплату и она получила статус "В ожидании", значит суточный лимит закончился и твоя выплата будет обработана в ручную в ближайшее время.
<br><br>
Минимальная сумма для вывода - <b>100</b> сестерциев.<br>
Максимальная сумма для вывода - <b>10 000</b> сестерциев.
</div>
<div class="decor"></div>

<div class="s-bk-lf">
    <div class="acc-title"></div>
</div>
<div class="silver-bk">
    <BR />
<?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_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;
}*/
?>

<?PHP
# Заглушка от халявщиков
if($user_data["insert_sum"] <= 14.99 AND $user_data["from_referals"] <=1.99){

?>
<center><font color="red"><b>Выплату могут заказывать пользователи, которые пополнили баланс минимум на 15 RUB, т.к. мы не любим халявщиков.<br></font></center>

<div class="clr"></div>
</div>
<?PHP

return;
}

?>



<?PHP






# Заносим выплату
if(isset($_POST['swap'])){ // проверка: была ли отправлена форма
    if(!empty($_POST['purse'])){
        $ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'26808',
        'yandex'=>'57378077',
        'beeline'=>'24898938',
        'megafon'=>'24899391',
        'mts'=>'24899291',
        'tele2'=>'95877310',
        'VISA' =>'57568699',
        '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,15}$#", substr($purse,1)) ) return false;   
                    return $purse;
                }
            }
            if($_POST['ps'] == 'yandex'){
                function ViewPurse($purse){
                    if( !preg_match("#^41001[0-9]{7,11}$#",$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,15}$#",$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 = '65000';
                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 = '$usid' AND (status = '0' OR status = '1')");
                        if($db->FetchRow() == 0){
                            
                            
                          

                            # Делаем выплату
                                $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 / $config_site["ser_per_wmr"]), 2);   
                                        
                                        $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' 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'><b>Выплачено!</b></font></center><BR />";
                                                        $db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
                                                        $user_data = $db->FetchArray();
                                                    }else{
                                                        echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                                    }
                                            }else{
                                                echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                            }
                                        }else echo '<center><font color = "red"><b>Сервер перегружен - попробуйте через 10-15 секунд или сообщите о ней администратору</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>У вас имеются необработанные заявки. Дождитесь их выполнения.</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><b><font color = "red">Вы не ввели номер кошелька</font></b></center><BR />';
}
?>
<style>
    .selectPS{
    display: inline-block;
    width: 100px;
    vertical-align: top;
    text-align: center;
    padding: 5px 5px 10px 5px;
    margin: 5px 2px;
    border: 2px dotted #fff4e3;
    cursor: pointer;
}
.selectPS:hover{
    border: 2px dotted #cb8851;
    background: #fde6c3;
}
.selectPS .imagesps{
    width: 55px;
    box-sizing: border-box;
    height: 55px;
    display: inline-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 = '<font color="#000;">Номер телефона '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
    if(ps == 'eps'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер счета '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }   
    if(ps == 'card'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер карты '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = '<font color="#000;">Имя, Фамилия держателя:</font>';
        person.insertBefore(newTd, person.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new3';
        newTd.innerHTML = '<input type="text" name="person" size="15">';
        person.insertBefore(newTd, person.children[1]);
        min = 65000;
        document.getElementById('str_min').style.display = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
}
</script>
    <div align="center">

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

<br>
                    

<br>                   

                            
    </div>
<div id="str_min" style="display:none">Минимальная сумма выплаты на <span id="name_ps"></span> составляет <span id="min"></span> серебра.</div><br>
<form action="" method="post">
<table id="pay"width="99%" border="0" align="center">
  <tr id="paysys"></tr>
  <tr id="person"></tr>
  <tr>
    <td><font color="#000;">Сумма для вывода</font><font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=round($user_data['money_p']); ?>" size="15"></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
    <input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<?$minPay = '';?>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
<center><h4>Последние 10 выплат</h4></center></td>
    </tr>
  <tr>
    <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>
  </tr>
  <?PHP
 
  $db->Query("SELECT * FROM db_payment WHERE user_id = '$user_id' ORDER BY id DESC LIMIT 20");
 
    if($db->NumRows() > 0){
    $img = Array(
        '1136053'=>'payeer',
        '26808'=>'qiwi',
        '57378077'=>'yandex',
        '24898938'=>'beeline',
        '24899391'=>'megafon',
        '24899291'=>'mts',
        '95877310'=>'tele2',
        '57568699' =>'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><div class="clr"></div>
</div>
Код:
 
Сообщения
5
Реакции
6
kolyaka105 написал(а):
Держи замени весь код:
Код:
<div class="acc-title"><img src="/img/withdraw.jpg"></div>

<div class="descr">
Для вывода средств используются <b>сестерции</b>. <?=$sonfig_site["ser_per_wmr"]; ?> 10 сестерциев = 1 рубль.<br><br>
Выплаты осуществляются <b>автоматически</b> сразу на твой кошелёк!<br><br>
Для безопасности на кошельках игры содержится сумма эквивалентная средней суточной сумме на выплаты. Если ты заказал выплату и она получила статус "В ожидании", значит суточный лимит закончился и твоя выплата будет обработана в ручную в ближайшее время.
<br><br>
Минимальная сумма для вывода - <b>100</b> сестерциев.<br>
Максимальная сумма для вывода - <b>10 000</b> сестерциев.
</div>
<div class="decor"></div>

<div class="s-bk-lf">
    <div class="acc-title"></div>
</div>
<div class="silver-bk">
    <BR />
<?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_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;
}*/
?>

<?PHP
# Заглушка от халявщиков
if($user_data["insert_sum"] <= 14.99 AND $user_data["from_referals"] <=1.99){

?>
<center><font color="red"><b>Выплату могут заказывать пользователи, которые пополнили баланс минимум на 15 RUB, т.к. мы не любим халявщиков.<br></font></center>

<div class="clr"></div>
</div>
<?PHP

return;
}

?>



<?PHP






# Заносим выплату
if(isset($_POST['swap'])){ // проверка: была ли отправлена форма
    if(!empty($_POST['purse'])){
        $ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'26808',
        'yandex'=>'57378077',
        'beeline'=>'24898938',
        'megafon'=>'24899391',
        'mts'=>'24899291',
        'tele2'=>'95877310',
        'VISA' =>'57568699',
        '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,15}$#", substr($purse,1)) ) return false;  
                    return $purse;
                }
            }
            if($_POST['ps'] == 'yandex'){
                function ViewPurse($purse){
                    if( !preg_match("#^41001[0-9]{7,11}$#",$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,15}$#",$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 = '65000';
                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 = '$usid' AND (status = '0' OR status = '1')");
                        if($db->FetchRow() == 0){
                           
                           
                         

                            # Делаем выплату
                                $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 / $config_site["ser_per_wmr"]), 2);  
                                       
                                        $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' 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'><b>Выплачено!</b></font></center><BR />";
                                                        $db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
                                                        $user_data = $db->FetchArray();
                                                    }else{
                                                        echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                                    }
                                            }else{
                                                echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                            }
                                        }else echo '<center><font color = "red"><b>Сервер перегружен - попробуйте через 10-15 секунд или сообщите о ней администратору</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>У вас имеются необработанные заявки. Дождитесь их выполнения.</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><b><font color = "red">Вы не ввели номер кошелька</font></b></center><BR />';
}
?>
<style>
    .selectPS{
    display: inline-block;
    width: 100px;
    vertical-align: top;
    text-align: center;
    padding: 5px 5px 10px 5px;
    margin: 5px 2px;
    border: 2px dotted #fff4e3;
    cursor: pointer;
}
.selectPS:hover{
    border: 2px dotted #cb8851;
    background: #fde6c3;
}
.selectPS .imagesps{
    width: 55px;
    box-sizing: border-box;
    height: 55px;
    display: inline-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 = '<font color="#000;">Номер телефона '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
    if(ps == 'eps'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер счета '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }  
    if(ps == 'card'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер карты '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = '<font color="#000;">Имя, Фамилия держателя:</font>';
        person.insertBefore(newTd, person.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new3';
        newTd.innerHTML = '<input type="text" name="person" size="15">';
        person.insertBefore(newTd, person.children[1]);
        min = 65000;
        document.getElementById('str_min').style.display = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
}
</script>
    <div align="center">

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

<br>
                   

<br>                  

                           
    </div>
<div id="str_min" style="display:none">Минимальная сумма выплаты на <span id="name_ps"></span> составляет <span id="min"></span> серебра.</div><br>
<form action="" method="post">
<table id="pay"width="99%" border="0" align="center">
  <tr id="paysys"></tr>
  <tr id="person"></tr>
  <tr>
    <td><font color="#000;">Сумма для вывода</font><font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=round($user_data['money_p']); ?>" size="15"></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
    <input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<?$minPay = '';?>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
<center><h4>Последние 10 выплат</h4></center></td>
    </tr>
  <tr>
    <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>
  </tr>
  <?PHP

  $db->Query("SELECT * FROM db_payment WHERE user_id = '$user_id' ORDER BY id DESC LIMIT 20");

    if($db->NumRows() > 0){
    $img = Array(
        '1136053'=>'payeer',
        '26808'=>'qiwi',
        '57378077'=>'yandex',
        '24898938'=>'beeline',
        '24899391'=>'megafon',
        '24899291'=>'mts',
        '95877310'=>'tele2',
        '57568699' =>'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><div class="clr"></div>
</div>
Код:
Спасибо большое, помогло!))))
 
pligin
Участник
Сообщения
3.654
Реакции
1.336
Telegram
pligin
kolyaka105 написал(а):
Держи замени весь код:
Код:
<div class="acc-title"><img src="/img/withdraw.jpg"></div>

<div class="descr">
Для вывода средств используются <b>сестерции</b>. <?=$sonfig_site["ser_per_wmr"]; ?> 10 сестерциев = 1 рубль.<br><br>
Выплаты осуществляются <b>автоматически</b> сразу на твой кошелёк!<br><br>
Для безопасности на кошельках игры содержится сумма эквивалентная средней суточной сумме на выплаты. Если ты заказал выплату и она получила статус "В ожидании", значит суточный лимит закончился и твоя выплата будет обработана в ручную в ближайшее время.
<br><br>
Минимальная сумма для вывода - <b>100</b> сестерциев.<br>
Максимальная сумма для вывода - <b>10 000</b> сестерциев.
</div>
<div class="decor"></div>

<div class="s-bk-lf">
    <div class="acc-title"></div>
</div>
<div class="silver-bk">
    <BR />
<?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_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;
}*/
?>

<?PHP
# Заглушка от халявщиков
if($user_data["insert_sum"] <= 14.99 AND $user_data["from_referals"] <=1.99){

?>
<center><font color="red"><b>Выплату могут заказывать пользователи, которые пополнили баланс минимум на 15 RUB, т.к. мы не любим халявщиков.<br></font></center>

<div class="clr"></div>
</div>
<?PHP

return;
}

?>



<?PHP






# Заносим выплату
if(isset($_POST['swap'])){ // проверка: была ли отправлена форма
    if(!empty($_POST['purse'])){
        $ps = Array(
        'Payeer'=>'1136053',
        'QIWI'=>'26808',
        'yandex'=>'57378077',
        'beeline'=>'24898938',
        'megafon'=>'24899391',
        'mts'=>'24899291',
        'tele2'=>'95877310',
        'VISA' =>'57568699',
        '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,15}$#", substr($purse,1)) ) return false;  
                    return $purse;
                }
            }
            if($_POST['ps'] == 'yandex'){
                function ViewPurse($purse){
                    if( !preg_match("#^41001[0-9]{7,11}$#",$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,15}$#",$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 = '65000';
                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 = '$usid' AND (status = '0' OR status = '1')");
                        if($db->FetchRow() == 0){
                           
                           
                         

                            # Делаем выплату
                                $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 / $config_site["ser_per_wmr"]), 2);  
                                       
                                        $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' 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'><b>Выплачено!</b></font></center><BR />";
                                                        $db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
                                                        $user_data = $db->FetchArray();
                                                    }else{
                                                        echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                                    }
                                            }else{
                                                echo '<center><font color = "red"><b>Ошибка ['.print_r($payeer->getErrors(), true).'] - попробуйте через 10-15 секунд или сообщите о ней администратору!</b></font></center><BR />';
                                            }
                                        }else echo '<center><font color = "red"><b>Сервер перегружен - попробуйте через 10-15 секунд или сообщите о ней администратору</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>У вас имеются необработанные заявки. Дождитесь их выполнения.</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><b><font color = "red">Вы не ввели номер кошелька</font></b></center><BR />';
}
?>
<style>
    .selectPS{
    display: inline-block;
    width: 100px;
    vertical-align: top;
    text-align: center;
    padding: 5px 5px 10px 5px;
    margin: 5px 2px;
    border: 2px dotted #fff4e3;
    cursor: pointer;
}
.selectPS:hover{
    border: 2px dotted #cb8851;
    background: #fde6c3;
}
.selectPS .imagesps{
    width: 55px;
    box-sizing: border-box;
    height: 55px;
    display: inline-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 = '<font color="#000;">Номер телефона '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
    if(ps == 'eps'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер счета '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }  
    if(ps == 'card'){
        var newTd = document.createElement('td');
        newTd['id'] = 'new';
        newTd.innerHTML = '<font color="#000;">Номер карты '+name+':</font>';
        paysys.insertBefore(newTd, paysys.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new1';
        newTd.innerHTML = '<input type="text" 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 = '<font color="#000;">Имя, Фамилия держателя:</font>';
        person.insertBefore(newTd, person.children[0]);
        var newTd = document.createElement('td');
        newTd['id'] = 'new3';
        newTd.innerHTML = '<input type="text" name="person" size="15">';
        person.insertBefore(newTd, person.children[1]);
        min = 65000;
        document.getElementById('str_min').style.display = 'inline';
        document.getElementById('min').innerHTML = min;
        document.getElementById('name_ps').innerHTML = name;
    }
}
</script>
    <div align="center">

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

<br>
                   

<br>                  

                           
    </div>
<div id="str_min" style="display:none">Минимальная сумма выплаты на <span id="name_ps"></span> составляет <span id="min"></span> серебра.</div><br>
<form action="" method="post">
<table id="pay"width="99%" border="0" align="center">
  <tr id="paysys"></tr>
  <tr id="person"></tr>
  <tr>
    <td><font color="#000;">Сумма для вывода</font><font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=round($user_data['money_p']); ?>" size="15"></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
    <input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<?$minPay = '';?>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
<center><h4>Последние 10 выплат</h4></center></td>
    </tr>
  <tr>
    <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>
  </tr>
  <?PHP

  $db->Query("SELECT * FROM db_payment WHERE user_id = '$user_id' ORDER BY id DESC LIMIT 20");

    if($db->NumRows() > 0){
    $img = Array(
        '1136053'=>'payeer',
        '26808'=>'qiwi',
        '57378077'=>'yandex',
        '24898938'=>'beeline',
        '24899391'=>'megafon',
        '24899291'=>'mts',
        '95877310'=>'tele2',
        '57568699' =>'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><div class="clr"></div>
</div>
Код:
расскажи подробности... заменить все могут, а понять в чем проблема, не все... даже я пока не понял что было
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
  • #10
Алексей Русских написал(а):
# Снимаем с пользователя
$db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");
на

PHP:
# Снимаем с пользователя
$db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$user_id'");
Не было $usid , есть только такая $user_id
 
kolyaka1051
Местный
Сообщения
77
Реакции
19
Telegram
kolyaka105
  • #11
APTEMOH написал(а):
на

PHP:
# Снимаем с пользователя
$db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$user_id'");
Не было $usid , есть только такая $user_id
Да, название переменной было не то.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху