РЕШЕНО Ошибка ограничения максимальной суммы выплаты в Фруктовой Ферме

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

cristian2307

Местный
Здравствуйте, если минимальный вывод 2 руб., а максимальный платеж 3 руб.
Запрашиваю вывести 1 рубль, появляется оповещение что минимальная выплата 2 рубля, это идеально.
но если я запрошу вывести 4 рубля, то появляется оповещение сообщите об этом администратору, но он делает платеж тайно и можно опустошить весь счет!
Как я могу закрыть этот пробел, и если я прошу вывести больше, чем разрешено, я говорю себе, что максимум вывести 3 рубля?

Заранее спасибо.

payment.php
PHP:
<?PHP include("pages/account/head/_head_lk.php");?>
<?PHP
if (!defined('AlexMoon') || AlexMoon !== true) { Header('Location: /404'); return; }
$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_users_a WHERE id = '$usid' LIMIT 1");
$user_dataa = $db->FetchArray();

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

$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");

 
?>




     <style>
[readonly] {
    background-color: #f5f5f5;
    border: solid 1px #a8a8a8;
}

textarea[readonly]:focus { /* WebKit: Google Chrome, Opera Next, Safari, etc. */
    outline: 0;
}
.form-control {
    -moz-border-radius: 2px;
    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    -webkit-border-radius: 2px;
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    box-shadow: none;
    color: rgba(0, 0, 0, 0.6);
    font-size: 14px;
}
.form-control {
    display: block;
    width: 100%;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #456;
    background-color: #fff;
    background-image: none;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}

</style> 


<?PHP
    
    function ViewPurse($purse){
        
        if( substr($purse,0,1) != "P" ) return false;
        if( !ereg("^[0-9]{7,15}$", substr($purse,1)) ) return false;   
        return $purse;
    }
    
    # Заносим выплату
    if(isset($_POST["purse"])){
        
        $purse = $_POST["purse"];
        $sum = round(floatval($_POST['sum']),2);
        $plat_passs = intval($_POST["plat_pass"]);
        $plat_pass = ($plat_passs);
        $val = "RUB";
        if($plat_pass == $user_dataa['plat_pass']) {
        if($purse !== false){
            
                if($sum >= $config->minpays){
                    
                
                    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){
                        $sum_pay = round( ($sum / $sonfig_site['ser_per_wmr']), 2);
                                
                            ### Делаем выплату ###   
                            $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
                            if ($payeer->isAuth())
                            {
                                
                                $arBalance = $payeer->getBalance();
                                if($arBalance["auth_error"] == 0)
                                {
                                    
                                
                                    
                                    $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                                    if( ($balance) >= ($sum_pay)){
                                    
                                    
                                    
                                    $arTransfer = $payeer->transfer(array(
                                    'curIn' => 'RUB', // счет списания
                                    'sum' => $sum_pay, // сумма получения
                                    'curOut' => 'RUB', // валюта получения
                                    'to' => $purse, // получатель (email)
                                    //'to' => '+71112223344',  // получатель (телефон)
                                    //'to' => 'P1000000',  // получатель (номер счета)
                                    'comment' => iconv('utf-8', 'utf-8', "Выплата пользователю {$usname}")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                                    
                                        if (!empty($arTransfer["historyId"]))
                                        {   
                                        
                                        if($sum_pay <= $config->maxpays){
                                            # Снимаем с пользователя
                                            $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
                                            "<script>
                                            swal(
  'Успешно!',
  'Выплачено !',
  'success'
)
    </script>";
                                            header("Refresh: 2; URL=/account/payment");
                                            
                                            
                                        }
                                        else
                                        {
                                        
                                            echo "<script>
    swal(
  'Ошибка!',
  'Внутреняя ошибка - сообщите о ней администратору !',
  'error'
)
    </script>";   
                                        
                                        }
                                    
                                    
                                    }else echo "<script>
    swal(
  'Ошибка!',
  'Внутреняя ошибка - сообщите о ней администратору !',
  'error'
)
    </script>";
                                    
                                }else echo "<script>
    swal(
  'Ошибка!',
  'Не удалось выплатить! Попробуйте позже!',
  'error'
)
    </script>";
                                
                            }else echo "<script>
    swal(
  'Ошибка!',
  'Не удалось выплатить! Попробуйте позже!',
  'error'
)
    </script>";
                            }else echo "<script>
    swal(
  'Ошибка!',
  'Максимальная сумма для выплаты составляет {$config->maxpays} RUB !',
  'error'
)
    </script>";
                                
                        }else echo "<script>
    swal(
  'Ошибка!',
  'У вас имеются необработанные заявки. Дождитесь их выполнения.',
  'error'
)
    </script>";
                            
                        
                    }else echo "<script>
    swal(
  'Ошибка!',
  'Вы указали больше, чем имеется на вашем счету !',
  'error'
)
    </script>";
                
                }else echo "<script>
    swal(
  'Ошибка!',
  'Минимальная сумма для выплаты составляет {$config->minpays} RUB !',
  'error'
)
    </script>";
            
        
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Кошелек Payeer указан неверно !',
  'error'
)
    </script>";
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Платежный пароль указан не верно !',
  'error'
)
    </script>";
    }
?>
<script type="text/javascript">
$(document).ready(function() {
    $("#first-tab").addClass('btns');
});

function navigate_tabs(container, tab)
{   $(".e").css('display' , 'none');
    $(".b").css('display' , 'none');
    $(".c").css('display' , 'none');
    $(".d").css('display' , 'none');
    $(".a").css('display' , 'none');
    
    
    
    
    $("#"+tab).addClass('btns');
    $("."+container).show();
}
</script>

<div class="a">
<div  class="col-md-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div class="card-body">
<div class="row align-items-center">
<div style="height:275px;" class="col-12">
    
    

<center>
<a style="font-size: 16px;" href="javascript:navigate_tabs('a','first-tab');" class="btns btn btn-azure" id="first-tab">PAYEER</a>

<a style="font-size: 16px;" href="javascript:navigate_tabs('b','second-tab');" class="btns btn btn-azure" id="second-tab">ОБМЕН БАЛАНСА</a>
</center>
 <br>   
    

    
    <?php
    if($user_data["insert_sum"] >= $config->pyoff){?>



<form action="" method="post">
  
    <?php
if($user_dataa['plat_pass'] == "") {
echo '
<form  >

<input style="font-size:15px;text-align: center;height:46px;margin-top: 3.8rem;background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="form-control" autocomplete="off"  placeholder="УКАЖИТЕ ПЛАТЕЖНЫЙ ПАРОЛЬ В ПРОФИЛЕ !" type="text" disabled>
</form>';
} else {

?>
<table width="80%" border="0" align="center">
  <tr>
  <?php
if($user_dataa['payeer'] ) { ?>
    <td><font color="#d6bfa9">Введите кошелек Payeer [Пример: P1234567]: </font></td>
<td  align='center'><input type='text' class='form-control' style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;"  name='purse'  value='<?=$user_dataa['payeer']; ?>' class="form-control"readonly/> </td>
  <?
} else {
?>
  <td><font color="#d6bfa9">Введите кошелек Payeer [Пример: P1234567]: </font></td>
<td style='border:0px;' align='center'><input style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;" type='text' class="form-control" name='purse' style="text-align: center;"  value='Установите кошелек в настройках' disabled/> </td>
<?php } ?>
  </tr>
  <tr>
     <td style="width: 600px;" > <center> <div class="dropdown-divider"></div> </center>
   </td>
  
     <td style="width: 300px;"> <center> <div class="dropdown-divider"></div> </center>
   </td>
  </tr>
  <tr >
    <td ><font color="#d6bfa9" >Отдаете рублей для вывода</font> <font color="#d6bfa9">[Мин. 1 RUB]:</font> </td>
    <td style="border:0px;" align="center">
        <input type="text" name="sum" id="sum" value="<?=sprintf("%.2f",$user_data["money_p"]); ?>" size="15"  class="form-control"    size="15"  style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;" placeholder="Введите сумму выплаты... (руб.)" />
        </td>
  </tr>
  <tr>
     <td style="width: 300px;" > <center> <div class="dropdown-divider"></div> </center>
   </td>
  
     <td style="width: 300px;"> <center> <div class="dropdown-divider"></div> </center>
   </td>
  </tr>
<tr >
    <td ><font color="#d6bfa9">Введите Платежный пароль : </font></td>
    <td style="border:0px;" align="center">
        <input  class="form-control" type="password" name="plat_pass" style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;" size="15" minlength="4" maxlength="4" placeholder="Введите платежный пароль"/></td>
  </tr>
  <tr>
    <td style="border:0px;" colspan="2" align="center">
       <input class="btns btn btn-azure" type="submit"  value="Выплатить" style="font-size: 17px;height: 35px;width: 200px;margin-top: 2.0rem;padding-top: 4;" /></td>
  </tr>
</table>
</form>
<?php } ?>

<?
 }else echo "
 <form  >

<input style='font-size:15px;text-align: center;height:46px;margin-top: 3.8rem;background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;' class='form-control' autocomplete='off'  placeholder='Выплату могут заказывать пользователи пополнившие на сумму от {$config->pyoff} RUB !'  disabled>
</form>";
?>


</div>
</div>
</div>
</div>
</div>







<div class="col-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card">
<div class="card-header">
<h4 class="card-title">Последние выплаты</h4>
</div>

<table class="table table-vcenter card-table">
<thead>
<tr>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">ID</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Сумма</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Дата</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Статус</th>
</tr>
</thead>

<tbody>
<?PHP
  $db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 10");
    if($db->NumRows() > 0){
          while($ref = $db->FetchArray()){
     $status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
        ?>
<tr>
<td style="text-align: center;width:25%;"><?=$ref["id"]; ?></td>
<td style="text-align: center;width:25%;"><?=$ref["sum"]; ?> RUB</td>
<td style="text-align: center;width:25%;"><?=date("d.m.Y",$ref["date_add"]); ?></td>
<td style="text-align: center;width:25%;"><?=$status_array[$ref["status"]]; ?></td>
</tr>

<?PHP
    
        }
    }else echo '<tr>
<td style="text-align: center;" colspan="4">Нет записей !</center></td>
</tr>'
  ?>
</tbody>

</table>

</div>
</div>


</div>









<div class="b" style="display: none;">
<div  class="col-md-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div class="card-body">
<div class="row align-items-center">
<div style="height:95px;" class="col-12">
    
    

<center>
<a style="font-size: 16px;" href="javascript:navigate_tabs('a','first-tab');" class="btns btn btn-azure" id="first-tab">PAYEER</a>

<a style="font-size: 16px;" href="javascript:navigate_tabs('b','second-tab');" class="btns btn btn-azure" id="second-tab">ОБМЕН БАЛАНСА</a>
</center>
 <br>   
    <h4 class="card-title" style="font-size: 16px;"><center>В обменном пункте вы можете обменять баланс с вывода на  покупки или рекламу.
</center>

          </h4>
 
    
    
    





</div>
</div>
</div>
</div>
</div>




<?PHP

if(isset($_POST["swap"])){

    $sum = intval($_POST["sum"]);

    if($sum >= 1){
    
        if($user_data["money_p"] >= $sum){
        
            $add_sum = ($sonfig_site["percent_swap"] > 0) ? ( ($sonfig_site["percent_swap"] / 100) * $sum) + $sum : $sum;
            
            $ta = time();
            $td = $ta + 60*60*24*15;
            
            $db->Query("UPDATE db_users_b SET money_b = money_b + $add_sum, money_p = money_p - $sum WHERE id = '$usid'");
            $db->Query("INSERT INTO db_swap_ser (user_id, user, amount_b, amount_p, date_add, date_del) VALUES ('$usid','$usname','$add_sum','$sum','$ta','$td')");
            
                echo
                "<script>
    swal(
  'Успешно!',
  'Обмен произведен !',
  'success'
)
    </script>";
        
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Недостаточно денег !',
  'error'
)
    </script>";
    
    }else echo
    "<script>
    swal(
  'Ошибка!',
  'Мин сумма 1 RUB !',
  'error'
)
    </script>";

}

if(isset($_POST["swap2"])){

    $sum = intval($_POST["sum"]);

    if($sum >= 1){
    
        if($user_data["money_p"] >= $sum){
        
            $add_sum = ($sonfig_site["percent_swap"] > 0) ? ( ($sonfig_site["percent_swap2"] / 100) * $sum) + $sum : $sum;
            
            $ta = time();
            $td = $ta + 60*60*24*15;
            
            $db->Query("UPDATE db_users_b SET money_s = money_s + $add_sum, money_p = money_p - $sum WHERE id = '$usid'");
            $db->Query("INSERT INTO db_swap_ser (user_id, user, amount_s, amount_p, date_add, date_del) VALUES ('$usid','$usname','$add_sum','$sum','$ta','$td')");
            
                echo "<script>
    swal(
  'Успешно!',
  'Обмен произведен !',
  'success'
)
    </script>";
        
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Недостаточно денег !',
  'error'
)
    </script>";
    
    }else echo
    "<script>
    swal(
  'Ошибка!',
  'Мин сумма 1 RUB !',
  'error'
)
    </script>";

}



?>

<div class="col-md-12">
<div class="row row-cards">

<div style="width: 50%;float:left;" class="col-xl-3 col-lg-4 col-md-4 col-sm-6 col-12">
<div style="height:160px;background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div  class="card-body">
<div class="row align-items-center">
<center><strong style="font-size: 18px;">Обменять на Покупки</strong></center>
<div class="dropdown-divider"></div>
<form action="" method="post">

<table width="400" border="0" align="center">
  <tr>
    <td style="color:#c7a687;"><font >С вывода</font> [На покупки +<?=$sonfig_site["percent_swap"]; ?>%]: </td>
    <td style="border:none;" align="center"><input  type='number' min='1' class="form-control" name="sum" id="sum" value="1" onkeyup="GetSumPer();" style="text-align: center;margin:0px; width:80px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;"/></td>
  </tr>

  <tr>
    <td style="border:none;" colspan="2" align="center">
      
        <button class="btns btn btn-azure" type="submit"  value="Выплатить" style="font-size: 17px;height: 35px;width: 200px;margin-top: 1.0rem;padding-top: 7;"  type="submit" name="swap"   value="Обменять на Покупки">Обменять на Покупки</button>
        </td>
  </tr>
</table>


</form>
</div>
</div>
</div>
</div>

<div style="width: 50%;float:left;" class="col-xl-3 col-lg-4 col-md-4 col-sm-6 col-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div style="height:150px;" class="card-body">
<div class="row align-items-center">
<center><strong style="font-size: 18px;">Обменять на Рекламу</strong></center>
<div class="dropdown-divider"></div>
<form action="" method="post">

<table width="400" border="0" align="center">
  <tr>
    <td style="color:#c7a687;"><font >C вывода</font> [ На рекламу +<?=$sonfig_site["percent_swap2"]; ?>%]: </td>
    <td style="border:none;" align="center"><input type='number' min='1' class="form-control" name="sum" id="sum" value="1" onkeyup="GetSumPer();" style="text-align: center;margin:0px; width:80px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;"/></td>
  </tr>

  <tr>
    <td style="border:none;" colspan="2" align="center"> <button class="btns btn btn-azure" style="font-size: 17px;height: 35px;width: 200px;margin-top: 1.0rem;padding-top: 7;" type="submit" name="swap2"   value="Обменять на Рекламу">Обменять на Рекламу </button></td>
  </tr>
</table>


</form>
</div>
</div>
</div>
</div>


</div>
</div>









<div class="col-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card">
<div class="card-header">
<h4 class="card-title">Последние обмены</h4>
</div>

<table class="table table-vcenter card-table">
<thead>
<tr>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">ID</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Пользователь</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Отдал</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Дата</th>
</tr>
</thead>

<tbody>
<?PHP
  $db->Query("SELECT * FROM db_swap_ser WHERE user_id = '$usid' ORDER BY id DESC LIMIT 5");
    if($db->NumRows() > 0){
          while($ref = $db->FetchArray()){
    
        ?>
<tr>
<td style="text-align: center;width:25%;"><?=$ref["id"]; ?></td>
<td style="text-align: center;width:25%;"><?=$ref["user"]; ?></strong></td>
<td style="text-align: center;width:25%;"><?=$ref["amount_p"]; ?> RUB</td>
<td style="text-align: center;width:25%;"><?=date("d.m.Y",$ref["date_add"]); ?></td>
</tr>


  <?PHP
    
        }
    }else echo '<tr>
<td style="text-align: center;" colspan="4">Нет записей !</center></td>
</tr>'
  ?>
</tbody>

</table>

</div>
</div>


</div>




















 

</div>
</div>
</div>
</div>
</div>
 </div>
</div>

<?PHP include("pages/account/foot/_foot_lk.php");?>
 

pligin

Команда форума
Администратор
но если я запрошу вывести 4 рубля, то появляется оповещение сообщите об этом администратору, но он делает платеж тайно и можно опустошить весь счет!
Не тайно. Все правильно работает.
Ты не подумал о том, что нужно проверять сумму до выплаты, а не после?
 

cristian2307

Местный
Не тайно. Все правильно работает.
Ты не подумал о том, что нужно проверять сумму до выплаты, а не после?
Поясню, допустим у меня на счету Payeer 100 руб.
на моем сайте счет для вывода у меня есть 5 руб.
максимальная выплата 4 руб.
минимальный платеж 1 руб.
Вывожу 1 руб и работает отлично.
Если я выведу больше, чем разрешено, то есть больше 4 руб, это может быть 5 или даже больше того, что у меня есть на балансе, например 6 руб, это вычтет 6 руб из 100, которые у меня есть в payeer , на счету для вывода у меня те же 5 руб.

Если я вывожу больше, чем у меня есть в payeer, то есть 100 руб, то это явно ничего не скидывает.

Проблема в том, что если я снимаю больше, чем разрешено максимальное снятие средств, именно здесь payeer сбрасывает со счетов то, что я запрашиваю, но на веб-сайте он показывает только отчет об ошибке для администратора.
 

pligin

Команда форума
Администратор
Поясню, допустим у меня на счету Payeer 100 руб.
на моем сайте счет для вывода у меня есть 5 руб.
максимальная выплата 4 руб.
минимальный платеж 1 руб.
Вывожу 1 руб и работает отлично.
Если я выведу больше, чем разрешено, то есть больше 4 руб, это может быть 5 или даже больше того, что у меня есть на балансе, например 6 руб, это вычтет 6 руб из 100, которые у меня есть в payeer , на счету для вывода у меня те же 5 руб.

Если я вывожу больше, чем у меня есть в payeer, то есть 100 руб, то это явно ничего не скидывает.

Проблема в том, что если я снимаю больше, чем разрешено максимальное снятие средств, именно здесь payeer сбрасывает со счетов то, что я запрашиваю, но на веб-сайте он показывает только отчет об ошибке для администратора.
Я все понял с первого сообщения.
Ты проверяешь максимальную сумму платежа после проведения выплаты.
 

cristian2307

Местный
Я все понял с первого сообщения.
Ты проверяешь максимальную сумму платежа после проведения выплаты.
Максимум 2 рубля, но я запрашиваю 3 рубля и возникает ошибка и я отправляю 3 рубля на другой кошелек payeer.

PHP:
# Заглушка на выплаты
    public $pyoff = 0;//сумма после которой открывается выплата
    public $minpays = 1;//минимальная сумма выплаты
    public $maxpays = 2;//максимальная сумма выплаты
 

pligin

Команда форума
Администратор
Максимум 2 рубля, но я запрашиваю 3 рубля и возникает ошибка и я отправляю 3 рубля на другой кошелек payeer.

PHP:
# Заглушка на выплаты
    public $pyoff = 0;//сумма после которой открывается выплата
    public $minpays = 1;//минимальная сумма выплаты
    public $maxpays = 2;//максимальная сумма выплаты
Checking the maximum payment amount in your code is placed after the code that pays
 

pligin

Команда форума
Администратор
Я пытался разными способами, но безуспешно, не могли бы вы изменить код первого сообщения и отправить его мне повторно? пожалуйста?
PHP:
<?PHP include("pages/account/head/_head_lk.php");?>
<?PHP
if (!defined('AlexMoon') || AlexMoon !== true) { Header('Location: /404'); return; }
$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_users_a WHERE id = '$usid' LIMIT 1");
$user_dataa = $db->FetchArray();

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

$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");

 
?>




     <style>
[readonly] {
    background-color: #f5f5f5;
    border: solid 1px #a8a8a8;
}

textarea[readonly]:focus { /* WebKit: Google Chrome, Opera Next, Safari, etc. */
    outline: 0;
}
.form-control {
    -moz-border-radius: 2px;
    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    -webkit-border-radius: 2px;
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    box-shadow: none;
    color: rgba(0, 0, 0, 0.6);
    font-size: 14px;
}
.form-control {
    display: block;
    width: 100%;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #456;
    background-color: #fff;
    background-image: none;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}

</style>


<?PHP
    
    function ViewPurse($purse){
        
        if( substr($purse,0,1) != "P" ) return false;
        if( !ereg("^[0-9]{7,15}$", substr($purse,1)) ) return false;   
        return $purse;
    }
    
    # Заносим выплату
    if(isset($_POST["purse"])){
        
        $purse = $_POST["purse"];
        $sum = round(floatval($_POST['sum']),2);
        $plat_passs = intval($_POST["plat_pass"]);
        $plat_pass = ($plat_passs);
        $val = "RUB";
        if($plat_pass == $user_dataa['plat_pass']) {
        if($purse !== false){
            
                if($sum >= $config->minpays && $sum <= $config->maxpays){
                    
                
                    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){
                        $sum_pay = round( ($sum / $sonfig_site['ser_per_wmr']), 2);
                                
                            ### Делаем выплату ###   
                            $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
                            if ($payeer->isAuth())
                            {
                                
                                $arBalance = $payeer->getBalance();
                                if($arBalance["auth_error"] == 0)
                                {
                                    
                                
                                    
                                    $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                                    if( ($balance) >= ($sum_pay)){
                                    
                                    
                                    
                                    $arTransfer = $payeer->transfer(array(
                                    'curIn' => 'RUB', // счет списания
                                    'sum' => $sum_pay, // сумма получения
                                    'curOut' => 'RUB', // валюта получения
                                    'to' => $purse, // получатель (email)
                                    //'to' => '+71112223344',  // получатель (телефон)
                                    //'to' => 'P1000000',  // получатель (номер счета)
                                    'comment' => iconv('utf-8', 'utf-8', "Выплата пользователю {$usname}")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                                    
                                        if (!empty($arTransfer["historyId"]))
                                        {
                                            # Снимаем с пользователя
                                            $db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");
                                            
                                            # Вставляем запись в выплаты
                                            $da = time();
                                            $dd = $da + 60*60*24*15;
                                            
                                            $ppid = $arTransfer["historyId"];
                                            
                                            $db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, payment_id, date_add, status)
                                            VALUES ('$usname','$usid','$purse','$sum_pay','RUB', '$sum','$ppid','".time()."', '3')");
                                            
                                            $db->Query("UPDATE db_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
                                            $db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
                                            
                                            echo
                                            "<script>
                                            swal(
  'Успешно!',
  'Выплачено !',
  'success'
)
    </script>";
                                            header("Refresh: 2; URL=/account/payment");
                                    
                                    
                                    }else echo "<script>
    swal(
  'Ошибка!',
  'Внутреняя ошибка - сообщите о ней администратору !',
  'error'
)
    </script>";
                                    
                                }else echo "<script>
    swal(
  'Ошибка!',
  'Не удалось выплатить! Попробуйте позже!',
  'error'
)
    </script>";
                                
                            }else echo "<script>
    swal(
  'Ошибка!',
  'Не удалось выплатить! Попробуйте позже!',
  'error'
)
    </script>";
                            }else echo "<script>
    swal(
  'Ошибка 631!',
  'Обратитесь к администратору',
  'error'
)
    </script>";
                                
                        }else echo "<script>
    swal(
  'Ошибка!',
  'У вас имеются необработанные заявки. Дождитесь их выполнения.',
  'error'
)
    </script>";
                            
                        
                    }else echo "<script>
    swal(
  'Ошибка!',
  'Вы указали больше, чем имеется на вашем счету !',
  'error'
)
    </script>";
                
                }else echo "<script>
    swal(
  'Ошибка!',
  'Сумма выплаты должна быть от {$config->minpays} до {$config->maxpays} RUB !',
  'error'
)
    </script>";
            
        
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Кошелек Payeer указан неверно !',
  'error'
)
    </script>";
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Платежный пароль указан не верно !',
  'error'
)
    </script>";
    }
?>
<script type="text/javascript">
$(document).ready(function() {
    $("#first-tab").addClass('btns');
});

function navigate_tabs(container, tab)
{   $(".e").css('display' , 'none');
    $(".b").css('display' , 'none');
    $(".c").css('display' , 'none');
    $(".d").css('display' , 'none');
    $(".a").css('display' , 'none');
    
    
    
    
    $("#"+tab).addClass('btns');
    $("."+container).show();
}
</script>

<div class="a">
<div  class="col-md-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div class="card-body">
<div class="row align-items-center">
<div style="height:275px;" class="col-12">
    
    

<center>
<a style="font-size: 16px;" href="javascript:navigate_tabs('a','first-tab');" class="btns btn btn-azure" id="first-tab">PAYEER</a>

<a style="font-size: 16px;" href="javascript:navigate_tabs('b','second-tab');" class="btns btn btn-azure" id="second-tab">ОБМЕН БАЛАНСА</a>
</center>
 <br>   
    

    
    <?php
    if($user_data["insert_sum"] >= $config->pyoff){?>



<form action="" method="post">
 
    <?php
if($user_dataa['plat_pass'] == "") {
echo '
<form  >

<input style="font-size:15px;text-align: center;height:46px;margin-top: 3.8rem;background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="form-control" autocomplete="off"  placeholder="УКАЖИТЕ ПЛАТЕЖНЫЙ ПАРОЛЬ В ПРОФИЛЕ !" type="text" disabled>
</form>';
} else {

?>
<table width="80%" border="0" align="center">
  <tr>
  <?php
if($user_dataa['payeer'] ) { ?>
    <td><font color="#d6bfa9">Введите кошелек Payeer [Пример: P1234567]: </font></td>
<td  align='center'><input type='text' class='form-control' style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;"  name='purse'  value='<?=$user_dataa['payeer']; ?>' class="form-control"readonly/> </td>
  <?
} else {
?>
  <td><font color="#d6bfa9">Введите кошелек Payeer [Пример: P1234567]: </font></td>
<td style='border:0px;' align='center'><input style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;" type='text' class="form-control" name='purse' style="text-align: center;"  value='Установите кошелек в настройках' disabled/> </td>
<?php } ?>
  </tr>
  <tr>
     <td style="width: 600px;" > <center> <div class="dropdown-divider"></div> </center>
   </td>
 
     <td style="width: 300px;"> <center> <div class="dropdown-divider"></div> </center>
   </td>
  </tr>
  <tr >
    <td ><font color="#d6bfa9" >Отдаете рублей для вывода</font> <font color="#d6bfa9">[Мин. 1 RUB]:</font> </td>
    <td style="border:0px;" align="center">
        <input type="text" name="sum" id="sum" value="<?=sprintf("%.2f",$user_data["money_p"]); ?>" size="15"  class="form-control"    size="15"  style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;" placeholder="Введите сумму выплаты... (руб.)" />
        </td>
  </tr>
  <tr>
     <td style="width: 300px;" > <center> <div class="dropdown-divider"></div> </center>
   </td>
 
     <td style="width: 300px;"> <center> <div class="dropdown-divider"></div> </center>
   </td>
  </tr>
<tr >
    <td ><font color="#d6bfa9">Введите Платежный пароль : </font></td>
    <td style="border:0px;" align="center">
        <input  class="form-control" type="password" name="plat_pass" style="text-align: center;height: 30px;width: 300px;font-size: 15px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;" size="15" minlength="4" maxlength="4" placeholder="Введите платежный пароль"/></td>
  </tr>
  <tr>
    <td style="border:0px;" colspan="2" align="center">
       <input class="btns btn btn-azure" type="submit"  value="Выплатить" style="font-size: 17px;height: 35px;width: 200px;margin-top: 2.0rem;padding-top: 4;" /></td>
  </tr>
</table>
</form>
<?php } ?>

<?
 }else echo "
 <form  >

<input style='font-size:15px;text-align: center;height:46px;margin-top: 3.8rem;background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;' class='form-control' autocomplete='off'  placeholder='Выплату могут заказывать пользователи пополнившие на сумму от {$config->pyoff} RUB !'  disabled>
</form>";
?>


</div>
</div>
</div>
</div>
</div>







<div class="col-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card">
<div class="card-header">
<h4 class="card-title">Последние выплаты</h4>
</div>

<table class="table table-vcenter card-table">
<thead>
<tr>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">ID</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Сумма</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Дата</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Статус</th>
</tr>
</thead>

<tbody>
<?PHP
  $db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 10");
    if($db->NumRows() > 0){
          while($ref = $db->FetchArray()){
     $status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
        ?>
<tr>
<td style="text-align: center;width:25%;"><?=$ref["id"]; ?></td>
<td style="text-align: center;width:25%;"><?=$ref["sum"]; ?> RUB</td>
<td style="text-align: center;width:25%;"><?=date("d.m.Y",$ref["date_add"]); ?></td>
<td style="text-align: center;width:25%;"><?=$status_array[$ref["status"]]; ?></td>
</tr>

<?PHP
    
        }
    }else echo '<tr>
<td style="text-align: center;" colspan="4">Нет записей !</center></td>
</tr>'
  ?>
</tbody>

</table>

</div>
</div>


</div>









<div class="b" style="display: none;">
<div  class="col-md-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div class="card-body">
<div class="row align-items-center">
<div style="height:95px;" class="col-12">
    
    

<center>
<a style="font-size: 16px;" href="javascript:navigate_tabs('a','first-tab');" class="btns btn btn-azure" id="first-tab">PAYEER</a>

<a style="font-size: 16px;" href="javascript:navigate_tabs('b','second-tab');" class="btns btn btn-azure" id="second-tab">ОБМЕН БАЛАНСА</a>
</center>
 <br>   
    <h4 class="card-title" style="font-size: 16px;"><center>В обменном пункте вы можете обменять баланс с вывода на  покупки или рекламу.
</center>

          </h4>
 
    
    
    





</div>
</div>
</div>
</div>
</div>




<?PHP

if(isset($_POST["swap"])){

    $sum = intval($_POST["sum"]);

    if($sum >= 1){
    
        if($user_data["money_p"] >= $sum){
        
            $add_sum = ($sonfig_site["percent_swap"] > 0) ? ( ($sonfig_site["percent_swap"] / 100) * $sum) + $sum : $sum;
            
            $ta = time();
            $td = $ta + 60*60*24*15;
            
            $db->Query("UPDATE db_users_b SET money_b = money_b + $add_sum, money_p = money_p - $sum WHERE id = '$usid'");
            $db->Query("INSERT INTO db_swap_ser (user_id, user, amount_b, amount_p, date_add, date_del) VALUES ('$usid','$usname','$add_sum','$sum','$ta','$td')");
            
                echo
                "<script>
    swal(
  'Успешно!',
  'Обмен произведен !',
  'success'
)
    </script>";
        
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Недостаточно денег !',
  'error'
)
    </script>";
    
    }else echo
    "<script>
    swal(
  'Ошибка!',
  'Мин сумма 1 RUB !',
  'error'
)
    </script>";

}

if(isset($_POST["swap2"])){

    $sum = intval($_POST["sum"]);

    if($sum >= 1){
    
        if($user_data["money_p"] >= $sum){
        
            $add_sum = ($sonfig_site["percent_swap"] > 0) ? ( ($sonfig_site["percent_swap2"] / 100) * $sum) + $sum : $sum;
            
            $ta = time();
            $td = $ta + 60*60*24*15;
            
            $db->Query("UPDATE db_users_b SET money_s = money_s + $add_sum, money_p = money_p - $sum WHERE id = '$usid'");
            $db->Query("INSERT INTO db_swap_ser (user_id, user, amount_s, amount_p, date_add, date_del) VALUES ('$usid','$usname','$add_sum','$sum','$ta','$td')");
            
                echo "<script>
    swal(
  'Успешно!',
  'Обмен произведен !',
  'success'
)
    </script>";
        
        }else echo
        "<script>
    swal(
  'Ошибка!',
  'Недостаточно денег !',
  'error'
)
    </script>";
    
    }else echo
    "<script>
    swal(
  'Ошибка!',
  'Мин сумма 1 RUB !',
  'error'
)
    </script>";

}



?>

<div class="col-md-12">
<div class="row row-cards">

<div style="width: 50%;float:left;" class="col-xl-3 col-lg-4 col-md-4 col-sm-6 col-12">
<div style="height:160px;background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div  class="card-body">
<div class="row align-items-center">
<center><strong style="font-size: 18px;">Обменять на Покупки</strong></center>
<div class="dropdown-divider"></div>
<form action="" method="post">

<table width="400" border="0" align="center">
  <tr>
    <td style="color:#c7a687;"><font >С вывода</font> [На покупки +<?=$sonfig_site["percent_swap"]; ?>%]: </td>
    <td style="border:none;" align="center"><input  type='number' min='1' class="form-control" name="sum" id="sum" value="1" onkeyup="GetSumPer();" style="text-align: center;margin:0px; width:80px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;"/></td>
  </tr>

  <tr>
    <td style="border:none;" colspan="2" align="center">
      
        <button class="btns btn btn-azure" type="submit"  value="Выплатить" style="font-size: 17px;height: 35px;width: 200px;margin-top: 1.0rem;padding-top: 7;"  type="submit" name="swap"   value="Обменять на Покупки">Обменять на Покупки</button>
        </td>
  </tr>
</table>


</form>
</div>
</div>
</div>
</div>

<div style="width: 50%;float:left;" class="col-xl-3 col-lg-4 col-md-4 col-sm-6 col-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card card-sm">
<div style="height:150px;" class="card-body">
<div class="row align-items-center">
<center><strong style="font-size: 18px;">Обменять на Рекламу</strong></center>
<div class="dropdown-divider"></div>
<form action="" method="post">

<table width="400" border="0" align="center">
  <tr>
    <td style="color:#c7a687;"><font >C вывода</font> [ На рекламу +<?=$sonfig_site["percent_swap2"]; ?>%]: </td>
    <td style="border:none;" align="center"><input type='number' min='1' class="form-control" name="sum" id="sum" value="1" onkeyup="GetSumPer();" style="text-align: center;margin:0px; width:80px;background: rgba(0, 0, 0, .20);border: 1px dotted rgba(243,205,247,.55);border-radius: 0.3rem;color:#c7a687;"/></td>
  </tr>

  <tr>
    <td style="border:none;" colspan="2" align="center"> <button class="btns btn btn-azure" style="font-size: 17px;height: 35px;width: 200px;margin-top: 1.0rem;padding-top: 7;" type="submit" name="swap2"   value="Обменять на Рекламу">Обменять на Рекламу </button></td>
  </tr>
</table>


</form>
</div>
</div>
</div>
</div>


</div>
</div>









<div class="col-12">
<div style="background: rgba(0, 0, 0, .16);box-shadow: 0 6px 15px 0 rgba(0, 0, 0 , 0.15);border: 1px dashed rgba(214,191,169,.35);color:#d6bfa9;" class="card">
<div class="card-header">
<h4 class="card-title">Последние обмены</h4>
</div>

<table class="table table-vcenter card-table">
<thead>
<tr>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">ID</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Пользователь</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Отдал</th>
<th style="text-align: center;width:25%;background: rgba(0,0,0,.18);color:#c7a687;">Дата</th>
</tr>
</thead>

<tbody>
<?PHP
  $db->Query("SELECT * FROM db_swap_ser WHERE user_id = '$usid' ORDER BY id DESC LIMIT 5");
    if($db->NumRows() > 0){
          while($ref = $db->FetchArray()){
    
        ?>
<tr>
<td style="text-align: center;width:25%;"><?=$ref["id"]; ?></td>
<td style="text-align: center;width:25%;"><?=$ref["user"]; ?></strong></td>
<td style="text-align: center;width:25%;"><?=$ref["amount_p"]; ?> RUB</td>
<td style="text-align: center;width:25%;"><?=date("d.m.Y",$ref["date_add"]); ?></td>
</tr>


  <?PHP
    
        }
    }else echo '<tr>
<td style="text-align: center;" colspan="4">Нет записей !</center></td>
</tr>'
  ?>
</tbody>

</table>

</div>
</div>


</div>




















 

</div>
</div>
</div>
</div>
</div>
 </div>
</div>

<?PHP include("pages/account/foot/_foot_lk.php");?>
 
Статус
Закрыто для дальнейших ответов.
Верх