Ограничения на выплаты

  • Автор темы perforator1994
  • Дата начала
Статус
В этой теме нельзя размещать новые ответы.
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #21
alexsoft59 написал(а):
А,так я то думал что ты свое творение скинул уже,это щас сделаем,не велика проблема...))
Я убрал свое творение потому что стр не выводилась
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #22
PHP:
<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");
$sonfig_site = $db->FetchArray();

# Настраиваем кол-во суток для ограничения.
$nd_time = 1;

$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' AND date_add >= '$nd_time' order by id DESC");
$frompayments = $db->FetchArray();
$last24pay = $frompayments["sum"]*$sonfig_site["ser_per_wmr"];


$min_ser = $sonfig_site["min_pay"] * $sonfig_site["ser_per_wmr"];

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


# Список платежек
if(!isset($_GET["pay_id"])){

    if(isset($_POST["sys_pay"])){ Header("Location: /account/payment/".$_POST["sys_pay"]); return; }

    $db->Query("SELECT * FROM db_pay_systems ORDER BY id DESC");

    if($db->NumRows() == 0){ echo "<center>Нет платежных систем :(</center><BR /><div class='clr'></div></div>    "; return; }

    ?>

    <form action="" method="POST">
    <center>Укажите более подходящую для Вас платежную систему из списка имеющихся. <BR /><BR />
      

        <select name="sys_pay">
        <?PHP

            while($data = $db->FetchArray()){

                ?><option value="<?=$data["id"]; ?>"><?=$data["title"]; ?></option><?PHP

            }

        ?>
        </select>
        <BR /><BR />
        <input type="submit" class="btn btn-success" value="Выбрать" />
    </center>
    </form>
    <div class="clr"></div>
</div>

    <?PHP

return;
}else{

    $pay_id = intval($_GET["pay_id"]);

    $db->Query("SELECT * FROM db_pay_systems WHERE id = '$pay_id'");

    if($db->NumRows() == 0){ echo "<center>Такой платежной системы нет в нашем проекте :(</center><BR /><div class='clr'></div></div>"; return; }

    $pdata = $db->FetchArray();
    $min_ser = $pdata["min_pay"] * $sonfig_site["ser_per_wmr"];
    $ps = $pdata["title"];


    # Создание заявки на выплату
    if(isset($_POST["pp"])){

        $purse = strval(trim($func->TextClean($_POST["pp"])));
        $sum = intval($_POST["sum"]);

        if( strlen($purse) > 5){

            if( substr($purse, 0, 1) == $pdata["first_char"] ){

                if($min_ser <= $sum){

                    if($sum <= $user_data["money_p"]){

                            # Проверяем на существующие заявки
                            $db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND status = 0");
                            if($db->FetchRow() == 0){
                               
                                ### Устанавливаем лимит на 24 часа по выплатам для $USID
                                 if ($frompayments["date_add"] <= time() - $nd_time * 86400) {                               
                                                      
                                                         # Снимаем с пользователя
                            $db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");

                            # Вставляем запись в выплаты
                            $da = time();
                            $dd = $da + 60*60*24*15;
                            $sum_r = round($sum / $sonfig_site["ser_per_wmr"], 2);
                            $db->Query("INSERT INTO db_payment (user, user_id, purse, sum, serebro, pay_sys, date_add, date_del)
                            VALUES ('$usname','$usid','$purse','$sum_r','$sum','$ps','$da','$dd')");

                            echo "<center><div class='alert alert-success'><b>Ваша заявка отправлена в очередь на выполнение</b></div></center><BR />";
                           
                                }else echo "<center><div class='alert' id='error'><b>В ближайшие 24 часа Вы уже получали выплату! Попробуйте позже</b></div></center>";                           

                            }else echo "<center><font color = 'red'><b>У вас имеются необработанные заявки. Дождитесь их выполнения.</b></font></center><BR />";


                    }else echo "<center><div class='alert alert-error'><b>Вы указали больше, чем имеется на вашем счету</b></div></center><BR />";

                }else echo "<center><div class='alert alert-error'><b>Минимальная сумма для вывода {$min_ser} серебра</b></div></center><BR />";

            }else echo "<center><div class='alert alert-error'><b>Кошелек должен начинаться с ".$pdata["first_char"]."</b></div></center><BR />";

        }else echo "<center><div class='alert alert-error'><b>Кошелек заполнен неверно</b></div></center><BR />";

    }



?>


<form action="" method="post">
<table width="99%" border="0" align="center">
  <tr>
    <td><font color="#000;">Кошелек</font> [Начинается с <?=$pdata["first_char"]; ?>]<font color="#000;">:</font> </td>
    <td><input type="text" name="pp" size="15"/></td>
  </tr>
  <tr>
    <td><font color="#000;">Отдаете серебро для вывода</font> [Мин. <?=$min_ser; ?>]<font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=$min_ser; ?>" size="15" onkeyup="PaymentSum();" /></td>
  </tr>
  <tr>
    <td><font color="#000;">Получаете <?=$config->VAL; ?></font> [Без учета комиссии]<font color="#000;">:</font> </td>
    <td>
    <input type="text" name="res" id="res_sum" value="0" size="15" disabled="disabled"/>
    <input type="hidden" name="per" id="ser_per" value="<?=$sonfig_site["ser_per_wmr"]; ?>" disabled="disabled"/></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input type="submit" name="swap" value="Заказать выплату" class="btn btn-success" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<script language="javascript">PaymentSum();</script>

<?PHP } ?>

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

        ?>
        <tr class="htt">
            <td align="center"><?=$ref["serebro"]; ?></td>
            <td align="center"><?=sprintf("%.2f",$ref["sum"]); ?> RUB</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>
Проверяй...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #23
alexsoft59 написал(а):
PHP:
<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");
$sonfig_site = $db->FetchArray();

# Настраиваем кол-во суток для ограничения.
$nd_time = 1;

$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' AND date_add >= '$nd_time' order by id DESC");
$frompayments = $db->FetchArray();
$last24pay = $frompayments["sum"]*$sonfig_site["ser_per_wmr"];


$min_ser = $sonfig_site["min_pay"] * $sonfig_site["ser_per_wmr"];

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


# Список платежек
if(!isset($_GET["pay_id"])){

    if(isset($_POST["sys_pay"])){ Header("Location: /account/payment/".$_POST["sys_pay"]); return; }

    $db->Query("SELECT * FROM db_pay_systems ORDER BY id DESC");

    if($db->NumRows() == 0){ echo "<center>Нет платежных систем :(</center><BR /><div class='clr'></div></div>    "; return; }

    ?>

    <form action="" method="POST">
    <center>Укажите более подходящую для Вас платежную систему из списка имеющихся. <BR /><BR />
     

        <select name="sys_pay">
        <?PHP

            while($data = $db->FetchArray()){

                ?><option value="<?=$data["id"]; ?>"><?=$data["title"]; ?></option><?PHP

            }

        ?>
        </select>
        <BR /><BR />
        <input type="submit" class="btn btn-success" value="Выбрать" />
    </center>
    </form>
    <div class="clr"></div>
</div>

    <?PHP

return;
}else{

    $pay_id = intval($_GET["pay_id"]);

    $db->Query("SELECT * FROM db_pay_systems WHERE id = '$pay_id'");

    if($db->NumRows() == 0){ echo "<center>Такой платежной системы нет в нашем проекте :(</center><BR /><div class='clr'></div></div>"; return; }

    $pdata = $db->FetchArray();
    $min_ser = $pdata["min_pay"] * $sonfig_site["ser_per_wmr"];
    $ps = $pdata["title"];


    # Создание заявки на выплату
    if(isset($_POST["pp"])){

        $purse = strval(trim($func->TextClean($_POST["pp"])));
        $sum = intval($_POST["sum"]);

        if( strlen($purse) > 5){

            if( substr($purse, 0, 1) == $pdata["first_char"] ){

                if($min_ser <= $sum){

                    if($sum <= $user_data["money_p"]){

                            # Проверяем на существующие заявки
                            $db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND status = 0");
                            if($db->FetchRow() == 0){
                              
                                ### Устанавливаем лимит на 24 часа по выплатам для $USID
                                 if ($frompayments["date_add"] <= time() - $nd_time * 86400) {                              
                                                     
                                                         # Снимаем с пользователя
                            $db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");

                            # Вставляем запись в выплаты
                            $da = time();
                            $dd = $da + 60*60*24*15;
                            $sum_r = round($sum / $sonfig_site["ser_per_wmr"], 2);
                            $db->Query("INSERT INTO db_payment (user, user_id, purse, sum, serebro, pay_sys, date_add, date_del)
                            VALUES ('$usname','$usid','$purse','$sum_r','$sum','$ps','$da','$dd')");

                            echo "<center><div class='alert alert-success'><b>Ваша заявка отправлена в очередь на выполнение</b></div></center><BR />";
                          
                                }else echo "<center><div class='alert' id='error'><b>В ближайшие 24 часа Вы уже получали выплату! Попробуйте позже</b></div></center>";                          

                            }else echo "<center><font color = 'red'><b>У вас имеются необработанные заявки. Дождитесь их выполнения.</b></font></center><BR />";


                    }else echo "<center><div class='alert alert-error'><b>Вы указали больше, чем имеется на вашем счету</b></div></center><BR />";

                }else echo "<center><div class='alert alert-error'><b>Минимальная сумма для вывода {$min_ser} серебра</b></div></center><BR />";

            }else echo "<center><div class='alert alert-error'><b>Кошелек должен начинаться с ".$pdata["first_char"]."</b></div></center><BR />";

        }else echo "<center><div class='alert alert-error'><b>Кошелек заполнен неверно</b></div></center><BR />";

    }



?>


<form action="" method="post">
<table width="99%" border="0" align="center">
  <tr>
    <td><font color="#000;">Кошелек</font> [Начинается с <?=$pdata["first_char"]; ?>]<font color="#000;">:</font> </td>
    <td><input type="text" name="pp" size="15"/></td>
  </tr>
  <tr>
    <td><font color="#000;">Отдаете серебро для вывода</font> [Мин. <?=$min_ser; ?>]<font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=$min_ser; ?>" size="15" onkeyup="PaymentSum();" /></td>
  </tr>
  <tr>
    <td><font color="#000;">Получаете <?=$config->VAL; ?></font> [Без учета комиссии]<font color="#000;">:</font> </td>
    <td>
    <input type="text" name="res" id="res_sum" value="0" size="15" disabled="disabled"/>
    <input type="hidden" name="per" id="ser_per" value="<?=$sonfig_site["ser_per_wmr"]; ?>" disabled="disabled"/></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input type="submit" name="swap" value="Заказать выплату" class="btn btn-success" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<script language="javascript">PaymentSum();</script>

<?PHP } ?>

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

        ?>
        <tr class="htt">
            <td align="center"><?=$ref["serebro"]; ?></td>
            <td align="center"><?=sprintf("%.2f",$ref["sum"]); ?> RUB</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>
Проверяй...
Спасибо все работает отлично.

Если можешь помоги еще в одном файле. это файл админки выплаты полуавтомат выдает ощибку номер 2 все настроено правельно баланс отображается на счету более 200 р. вот код файла
Код:
<div class="s-bk-lf">
    <div class="acc-title">Список выплат на Payeer</div>
</div>
<div class="silver-bk"><div class="clr"></div>   
<?


$num_p = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"]) -1) : 0;
$lim = $num_p * 100;

function colorSum($sum){

    if($sum >= 100) return "red";
    return "#000000";
}

if(isset($_POST['pay_here']) && is_numeric($_POST['pay_here'])) {
    $payed=$_POST['pay_here'];
    $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payed' AND `status` = '0' LIMIT 1 ");
    if($db->NumRows() > 0){
        //Выплачиваем
        $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payed' AND `status` = '0' LIMIT 1 ");
        $paydata = $db->FetchArray();
        $sum_pay = $paydata['sum'];
                $sum_pay1 = $sum_pay / 100;
                $sum_pay1 = $sum_pay1 * 5;
                $sum_pay = $sum_pay - $sum_pay1;
        $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->secretW);
        if($payeer->isAuth()) {
        $arBalance = $payeer->getBalance();
        $purse = $paydata['purse'];
        $usid = $paydata['user_id'];
        $usname = $paydata['user'];
        $paymentid = $paydata['payment_id'];
        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('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта Транспортной компании")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                if (!empty($arTransfer["historyId"])) {
                    $ppid = $arTransfer["historyId"];
                    $db->Query("UPDATE  db_request_payment SET status = '3' WHERE id = '$payed'");
                    $db->Query("UPDATE  db_payment SET status = '3' WHERE id = '$paymentid'");
                    $db->Query("UPDATE  db_payment SET payment_id = '$ppid' WHERE id = '$paymentid'");
                } else echo 'Ошибка 4';
            } else echo 'Ошибка 3';
        } else echo 'Ошибка 2';
        } else echo 'Ошибка 1';
    } else echo 'Ошибка 0';
}
else if(isset($_POST['canc'])) {
    $payid = intval($_POST['canc']);
    $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payid' AND `status` = '0' LIMIT 1 ");
    if($db->NumRows() > 0){
        $paydata = $db->FetchArray();
        $usid = $paydata['user_id'];
        $db->Query("SELECT * FROM db_payment WHERE id = $paydata[payment_id] ");
        $tmpresid = $db->FetchArray();
        $sum = $tmpresid['serebro'];
        $db->Query("UPDATE db_users_b SET money_p = money_p + '$sum' WHERE id = '$usid'");
        $db->Query("UPDATE  db_request_payment SET status = '2' WHERE id = '$payid'");
        $paymentid = $paydata['payment_id'];
        $db->Query("UPDATE  db_payment SET status = '2' WHERE id = '$paymentid'");
    }
}

$db->Query("SELECT * FROM db_request_payment WHERE `status`='0' ORDER BY id DESC LIMIT {$lim}, 100");

if($db->NumRows() > 0){

?>
<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr bgcolor="#efefef">
    <td align="center" width="50" class="m-tb">Пользователь</td>
    <td align="center" width="50" class="m-tb">Сумма</td>
    <td align="center" width="50" class="m-tb">Кошелек</td>
    <td align="center" width="50" class="m-tb">Выплатить</td>
    <td align="center" width="50" class="m-tb">Отменить</td>
    <td align="center" width="100" class="m-tb">Дата</td>
  </tr>


<?PHP

    while($data = $db->FetchArray()){
   
    ?>
    <tr class="htt">
    <td align="center"><a href="/?menu=admin4ik&sel=users&edit=<?=$data["user_id"]; ?>"<?php if($data['gardener']==1) {echo ' style="color: red;"';}  ?> class="stn"><?=$data["user"]; ?></a></td>
    <td align="center"><font color="<?=colorSum($data["sum"]); ?>"><?=sprintf("%.2f",$data["sum"]); ?> RUB</font></td>
    <td align="center"><?=$data["purse"]; ?></td>
    <td align="center">
    <?php
        if($data["status"]==0) {
    ?>
    <form action="" method="post">
    <input type="hidden" name="pay_here" value="<?=$data["id"]; ?>" />
    <input type="submit" value="Выплатить" />
    </form>
    <?php
    }
    else if($data["status"]==3) {
        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
    }
    else if($data["status"]==2) {
        echo "<center><font color = 'red'><b>Отменена!</b></font></center><BR />";
    }
    ?>
    </td>
    <td align="center">
    <?php
        if($data["status"]==0) {
    ?>
    <form action="" method="post">
    <input type="hidden" name="canc" value="<?=$data["id"]; ?>" />
    <input type="submit" value="Отменить" />
    </form>
    <?php
    }
    else if($data["status"]==3) {
        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
    }
    else if($data["status"]==2) {
        echo "<center><font color = 'red'><b>Отменена!</b></font></center><BR />";
    }
    ?>
    </td>
    <td align="center"><?=date("d.m H:i:s",$data["date"]); ?></td>
      </tr>
    <?PHP
   
    }

?>

</table>
<BR />
<?PHP


}else echo "<center><b>На данной странице нет записей</b></center><BR />";

   
$db->Query("SELECT COUNT(*) FROM  db_request_payment WHERE `status`='0' ");
$all_pages = $db->FetchRow();

    if($all_pages > 100){
   
    $sort_b = (isset($_GET["sort"])) ? intval($_GET["sort"]) : 0;
   
    $nav = new navigator;
    $page = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"])) : 1;
   
    echo "<BR /><center>".$nav->Navigation(10, $page, ceil($all_pages / 100), "/?menu=admin4ik&sel=pay123&page="), "</center>";
   
    }
?>
</div><div class='clr'></div>
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #24
Ну судя по всему это ошибка аутентификации у тебя происходит,смотреть надо на сервере прямо...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #25
alexsoft59 написал(а):
Ну судя по всему это ошибка аутентификации у тебя происходит,смотреть надо на сервере прямо...
На каком сервере посмотреть можно подробнее?
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #26
Shoma2114 написал(а):
На каком сервере посмотреть можно подробнее?
На месте имею ввиду,смотри сами настройки API Payeer и проверяй еще раз...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #27
alexsoft59 написал(а):
На месте имею ввиду,смотри сами настройки API Payeer и проверяй еще раз...
Стояли до этого авто-выплаты все нормально работало.
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #28
Апи поставил по новой настроил все равно дает ошибку №1 (((
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #29
PHP:
<div class="s-bk-lf">
    <div class="acc-title">Список выплат на Payeer</div>
</div>
<div class="silver-bk"><div class="clr"></div>  
<?


$num_p = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"]) -1) : 0;
$lim = $num_p * 100;

function colorSum($sum){

    if($sum >= 100) return "red";
    return "#000000";
}

if(isset($_POST['pay_here']) && is_numeric($_POST['pay_here'])) {
    $payed=$_POST['pay_here'];
    $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payed' AND `status` = '0' LIMIT 1 ");
    if($db->NumRows() > 0){
        //Выплачиваем
        $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payed' AND `status` = '0' LIMIT 1 ");
        $paydata = $db->FetchArray();
        $sum_pay = $paydata['sum'];
                $sum_pay1 = $sum_pay / 100;
                $sum_pay1 = $sum_pay1 * 5;
                $sum_pay = $sum_pay - $sum_pay1;
        $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
        if($payeer->isAuth()) {
        $arBalance = $payeer->getBalance();
        $purse = $paydata['purse'];
        $usid = $paydata['user_id'];
        $usname = $paydata['user'];
        $paymentid = $paydata['payment_id'];
        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('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта Транспортной компании")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                if (!empty($arTransfer["historyId"])) {
                    $ppid = $arTransfer["historyId"];
                    $db->Query("UPDATE  db_request_payment SET status = '3' WHERE id = '$payed'");
                    $db->Query("UPDATE  db_payment SET status = '3' WHERE id = '$paymentid'");
                    $db->Query("UPDATE  db_payment SET payment_id = '$ppid' WHERE id = '$paymentid'");
                } else echo 'Ошибка 4';
            } else echo 'Ошибка 3';
        } else echo 'Ошибка 2';
        } else echo 'Ошибка 1';
    } else echo 'Ошибка 0';
}
else if(isset($_POST['canc'])) {
    $payid = intval($_POST['canc']);
    $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payid' AND `status` = '0' LIMIT 1 ");
    if($db->NumRows() > 0){
        $paydata = $db->FetchArray();
        $usid = $paydata['user_id'];
        $db->Query("SELECT * FROM db_payment WHERE id = $paydata[payment_id] ");
        $tmpresid = $db->FetchArray();
        $sum = $tmpresid['serebro'];
        $db->Query("UPDATE db_users_b SET money_p = money_p + '$sum' WHERE id = '$usid'");
        $db->Query("UPDATE  db_request_payment SET status = '2' WHERE id = '$payid'");
        $paymentid = $paydata['payment_id'];
        $db->Query("UPDATE  db_payment SET status = '2' WHERE id = '$paymentid'");
    }
}

$db->Query("SELECT * FROM db_request_payment WHERE `status`='0' ORDER BY id DESC LIMIT {$lim}, 100");

if($db->NumRows() > 0){

?>
<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr bgcolor="#efefef">
    <td align="center" width="50" class="m-tb">Пользователь</td>
    <td align="center" width="50" class="m-tb">Сумма</td>
    <td align="center" width="50" class="m-tb">Кошелек</td>
    <td align="center" width="50" class="m-tb">Выплатить</td>
    <td align="center" width="50" class="m-tb">Отменить</td>
    <td align="center" width="100" class="m-tb">Дата</td>
  </tr>


<?PHP

    while($data = $db->FetchArray()){
  
    ?>
    <tr class="htt">
    <td align="center"><a href="/?menu=admin4ik&sel=users&edit=<?=$data["user_id"]; ?>"<?php if($data['gardener']==1) {echo ' style="color: red;"';}  ?> class="stn"><?=$data["user"]; ?></a></td>
    <td align="center"><font color="<?=colorSum($data["sum"]); ?>"><?=sprintf("%.2f",$data["sum"]); ?> RUB</font></td>
    <td align="center"><?=$data["purse"]; ?></td>
    <td align="center">
    <?php
        if($data["status"]==0) {
    ?>
    <form action="" method="post">
    <input type="hidden" name="pay_here" value="<?=$data["id"]; ?>" />
    <input type="submit" value="Выплатить" />
    </form>
    <?php
    }
    else if($data["status"]==3) {
        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
    }
    else if($data["status"]==2) {
        echo "<center><font color = 'red'><b>Отменена!</b></font></center><BR />";
    }
    ?>
    </td>
    <td align="center">
    <?php
        if($data["status"]==0) {
    ?>
    <form action="" method="post">
    <input type="hidden" name="canc" value="<?=$data["id"]; ?>" />
    <input type="submit" value="Отменить" />
    </form>
    <?php
    }
    else if($data["status"]==3) {
        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
    }
    else if($data["status"]==2) {
        echo "<center><font color = 'red'><b>Отменена!</b></font></center><BR />";
    }
    ?>
    </td>
    <td align="center"><?=date("d.m H:i:s",$data["date"]); ?></td>
      </tr>
    <?PHP
  
    }

?>

</table>
<BR />
<?PHP


}else echo "<center><b>На данной странице нет записей</b></center><BR />";

  
$db->Query("SELECT COUNT(*) FROM  db_request_payment WHERE `status`='0' ");
$all_pages = $db->FetchRow();

    if($all_pages > 100){
  
    $sort_b = (isset($_GET["sort"])) ? intval($_GET["sort"]) : 0;
  
    $nav = new navigator;
    $page = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"])) : 1;
  
    echo "<BR /><center>".$nav->Navigation(10, $page, ceil($all_pages / 100), "/?menu=admin4ik&sel=pay123&page="), "</center>";
  
    }
?>
</div><div class='clr'></div>
Пробуй так должно работать...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #30
alexsoft59 написал(а):
PHP:
<div class="s-bk-lf">
    <div class="acc-title">Список выплат на Payeer</div>
</div>
<div class="silver-bk"><div class="clr"></div> 
<?


$num_p = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"]) -1) : 0;
$lim = $num_p * 100;

function colorSum($sum){

    if($sum >= 100) return "red";
    return "#000000";
}

if(isset($_POST['pay_here']) && is_numeric($_POST['pay_here'])) {
    $payed=$_POST['pay_here'];
    $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payed' AND `status` = '0' LIMIT 1 ");
    if($db->NumRows() > 0){
        //Выплачиваем
        $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payed' AND `status` = '0' LIMIT 1 ");
        $paydata = $db->FetchArray();
        $sum_pay = $paydata['sum'];
                $sum_pay1 = $sum_pay / 100;
                $sum_pay1 = $sum_pay1 * 5;
                $sum_pay = $sum_pay - $sum_pay1;
        $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
        if($payeer->isAuth()) {
        $arBalance = $payeer->getBalance();
        $purse = $paydata['purse'];
        $usid = $paydata['user_id'];
        $usname = $paydata['user'];
        $paymentid = $paydata['payment_id'];
        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('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта Транспортной компании")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                if (!empty($arTransfer["historyId"])) {
                    $ppid = $arTransfer["historyId"];
                    $db->Query("UPDATE  db_request_payment SET status = '3' WHERE id = '$payed'");
                    $db->Query("UPDATE  db_payment SET status = '3' WHERE id = '$paymentid'");
                    $db->Query("UPDATE  db_payment SET payment_id = '$ppid' WHERE id = '$paymentid'");
                } else echo 'Ошибка 4';
            } else echo 'Ошибка 3';
        } else echo 'Ошибка 2';
        } else echo 'Ошибка 1';
    } else echo 'Ошибка 0';
}
else if(isset($_POST['canc'])) {
    $payid = intval($_POST['canc']);
    $db->Query("SELECT * FROM `db_request_payment` WHERE `id` = '$payid' AND `status` = '0' LIMIT 1 ");
    if($db->NumRows() > 0){
        $paydata = $db->FetchArray();
        $usid = $paydata['user_id'];
        $db->Query("SELECT * FROM db_payment WHERE id = $paydata[payment_id] ");
        $tmpresid = $db->FetchArray();
        $sum = $tmpresid['serebro'];
        $db->Query("UPDATE db_users_b SET money_p = money_p + '$sum' WHERE id = '$usid'");
        $db->Query("UPDATE  db_request_payment SET status = '2' WHERE id = '$payid'");
        $paymentid = $paydata['payment_id'];
        $db->Query("UPDATE  db_payment SET status = '2' WHERE id = '$paymentid'");
    }
}

$db->Query("SELECT * FROM db_request_payment WHERE `status`='0' ORDER BY id DESC LIMIT {$lim}, 100");

if($db->NumRows() > 0){

?>
<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr bgcolor="#efefef">
    <td align="center" width="50" class="m-tb">Пользователь</td>
    <td align="center" width="50" class="m-tb">Сумма</td>
    <td align="center" width="50" class="m-tb">Кошелек</td>
    <td align="center" width="50" class="m-tb">Выплатить</td>
    <td align="center" width="50" class="m-tb">Отменить</td>
    <td align="center" width="100" class="m-tb">Дата</td>
  </tr>


<?PHP

    while($data = $db->FetchArray()){
 
    ?>
    <tr class="htt">
    <td align="center"><a href="/?menu=admin4ik&sel=users&edit=<?=$data["user_id"]; ?>"<?php if($data['gardener']==1) {echo ' style="color: red;"';}  ?> class="stn"><?=$data["user"]; ?></a></td>
    <td align="center"><font color="<?=colorSum($data["sum"]); ?>"><?=sprintf("%.2f",$data["sum"]); ?> RUB</font></td>
    <td align="center"><?=$data["purse"]; ?></td>
    <td align="center">
    <?php
        if($data["status"]==0) {
    ?>
    <form action="" method="post">
    <input type="hidden" name="pay_here" value="<?=$data["id"]; ?>" />
    <input type="submit" value="Выплатить" />
    </form>
    <?php
    }
    else if($data["status"]==3) {
        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
    }
    else if($data["status"]==2) {
        echo "<center><font color = 'red'><b>Отменена!</b></font></center><BR />";
    }
    ?>
    </td>
    <td align="center">
    <?php
        if($data["status"]==0) {
    ?>
    <form action="" method="post">
    <input type="hidden" name="canc" value="<?=$data["id"]; ?>" />
    <input type="submit" value="Отменить" />
    </form>
    <?php
    }
    else if($data["status"]==3) {
        echo "<center><font color = 'green'><b>Выплачено!</b></font></center><BR />";
    }
    else if($data["status"]==2) {
        echo "<center><font color = 'red'><b>Отменена!</b></font></center><BR />";
    }
    ?>
    </td>
    <td align="center"><?=date("d.m H:i:s",$data["date"]); ?></td>
      </tr>
    <?PHP
 
    }

?>

</table>
<BR />
<?PHP


}else echo "<center><b>На данной странице нет записей</b></center><BR />";

 
$db->Query("SELECT COUNT(*) FROM  db_request_payment WHERE `status`='0' ");
$all_pages = $db->FetchRow();

    if($all_pages > 100){
 
    $sort_b = (isset($_GET["sort"])) ? intval($_GET["sort"]) : 0;
 
    $nav = new navigator;
    $page = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"])) : 1;
 
    echo "<BR /><center>".$nav->Navigation(10, $page, ceil($all_pages / 100), "/?menu=admin4ik&sel=pay123&page="), "</center>";
 
    }
?>
</div><div class='clr'></div>
Пробуй так должно работать...
УРААААААААААААААААААААА получилось ты сегодня моя палочка выручалочка. Держи от меня +.
Сколько минимум должно быть в кошельке для выплат???
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #31
Shoma2114 написал(а):
УРААААААААААААААААААААА получилось ты сегодня моя палочка выручалочка. Держи от меня +.
Сколько минимум должно быть в кошельке для выплат???
Ну у тебя в данный момент до 0 списание будет,так что не важно какая там сумма...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #32
alexsoft59 написал(а):
Ну у тебя в данный момент до 0 списание будет,так что не важно какая там сумма...
Как исправить данную ошибку вылазиет после заказа выплаты
Зашли в функцию GetErrorarray(1) { [0]=> string(38) "Unknown column 'purse' in 'field list'" } Unknown column 'purse' in 'field list'
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #33
Добавь колонку purse в таблицу db_request_payment ,вроде там должна если смотреть по коду...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #34
alexsoft59 написал(а):
Добавь колонку purse в таблицу db_request_payment ,вроде там должна если смотреть по коду...
Колонка purse имеется там под ним записаны номера кошельков. но ошибка сохранилась и при попытке добавить purse выдало ошибку так как он уже имеется
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #35
Слушай,не могу понять где еще этой колонки не хватает,смотри,может еще какой то файл взаимодействует с основным?
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #36
alexsoft59 написал(а):
Слушай,не могу понять где еще этой колонки не хватает,смотри,может еще какой то файл взаимодействует с основным?
Да вроде бы нет. Ладно и на этом огромное спасибо за оказанную помощь.
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #37
Shoma2114 написал(а):
Да вроде бы нет. Ладно и на этом огромное спасибо за оказанную помощь.
Ты посмотри,это реально колонки не хватает в какой то табле просто,глянь db_payment ,может там не прописана или еще где то...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #38
alexsoft59 написал(а):
Ты посмотри,это реально колонки не хватает в какой то табле просто,глянь db_payment ,может там не прописана или еще где то...
Да уже весь бд облазил везде где он должен быть он есть
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #39
Shoma2114 написал(а):
Да уже весь бд облазил везде где он должен быть он есть
Ну однозначно,,ошибка то выходит что не хватает такой колонки ведь где то...
 
Shoma2114
Местный
Сообщения
63
Реакции
2
  • #40
alexsoft59 написал(а):
Ну однозначно,,ошибка то выходит что не хватает такой колонки ведь где то...
Это уже нужно искать на ясную голову. Ша она мутная спать пора. Спасибо тебе еще раз за все и спокойной ночи.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху