Вопросы по ферме регистрация и выплаты

անդեմ

Местный
Как установить собственно вот 1000 серебра при регистрации не могу код на форуме нормальный найти и куды его вставлять где в регистрации, второй вопрос при введении в регистрации зареганного имейла, выдает что dublicate e-mail как задать условие чтобы выдало типо: Имейл уже зарегистрирован.
и последний вопрос как создать условие сохранение кошеля на ферме, тоже у вас не нашел все грязное в плане там cash поинты и тд мне нужно обычные выплаты превратить вот собственно с сохранением кошеля вот код:
Код:
<div class="contents_pages">

<div class="textbox"><font color="black">
<div class="bg"><h1>Вывод средств</h1>
<p>
<BR />
<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Заказ выплаты";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];

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

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

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

# Минималка серебром!
$minPay = 150;

?>
<b>Выплаты осуществляются в автоматическом режиме и только на платежную систему PAYEER! Процент при выводе составляет 0%</b> <BR /><BR />
<b>Из платежной системы Payeer Вы можете вывести свои средства в автоматическом режиме на все известные платежные системы и международные банки.</b><BR /><BR />
<b>Ссылки на учебные материалы:</b><BR />
 - <a href="http://payeeer.ru/create" target="_blank">Создание счета в Payeer</a> <BR />
 - <a href="http://payeeer.ru/outpay" target="_blank">Вывод средств из payeer</a> <BR /><BR />

<center><b>Заказ выплаты:</b></center><BR />

<?PHP
    
function ViewPurse($purse){

if( substr($purse,0,1) != "P" ) return false;
if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
return $purse;
}
    
    # Заносим выплату
    if(isset($_POST["purse"])){
    $_POST["purse"] = $db->RealEscape($_POST['purse']);
    
        $purse = ViewPurse($_POST["purse"]);
        $purse = $db->RealEscape($_POST['purse']);
        $sum = intval($_POST["sum"]);
        $sum = $db->RealEscape($_POST['sum']);
        $val = "RUB";
        
        if($purse !== false){
            
                if($sum >= $minPay){
                
                    if($sum <= $user_data["money_p"]){
                        
                        # Проверяем на существующие заявки
                        $db->Query("SELECT COUNT(*) FROM tabled_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 / $sonfig_site["ser_per_wmr"]), 2);
                                    
                                    $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                                    if( ($balance) >= ($sum_pay)){
                                    
                                    
                                    
                                    $arTransfer = $payeer->transfer(array(
                                    'curIn' => 'RUB', // счет списания
                                    'sum' => $sum_pay, // сумма получения
                                    'curOut' => 'RUB', // валюта получения
                                    'to' => $purse, // получатель (email)
                                    //'to' => '+71112223344',  // получатель (телефон)
                                    //'to' => 'P1000000',  // получатель (номер счета)
                                    'comment' => iconv('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта WM-Farm")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                                    
                                        if (!empty($arTransfer["historyId"]))
                                        {   
                                        
                                        
                                            # Снимаем с пользователя
                                            $db->Query("UPDATE tabled_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 tabled_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 tabled_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
                                            $db->Query("UPDATE tabled_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
                                            
                                            echo "<center><font color = 'green'><b>Выплачено!</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><font color = 'red'><b>Не удалось выплатить! Попробуйте позже №1</b></font></center><BR />";
                                
                            }else echo "<center><font color = 'red'><b>Не удалось выплатить! Попробуйте позже №2</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'>Кошелек Payeer указан неверно! Смотрите образец!</font></b></center><BR />";
        
    }
?>

<form action="" method="post">
<table width="99%" border="0" align="center">
  <tr>
    <td><font color="#000;">Введите кошелек Payeer [Пример: P1112457]</font>: </td>
    <td><input type="text" name="purse" size="15"/></td>
 
 </tr>
 
  <tr>
    <td><font color="#000;">Отдаете серебро для вывода</font> [Мин. <?=$minPay ?>]<font color="#000;">:</font> </td>
    <td><input type="text" name="sum" id="sum" value="<?=round($user_data["money_p"]); ?>" size="15" onkeyup="PaymentSum();" /></td>
  </tr>
  <tr>
    <td><font color="#000;">Получаете <span id="res_val"></span></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="RUB" value="<?=$sonfig_site["ser_per_wmr"]; ?>" disabled="disabled"/>
    <input type="hidden" name="per" id="min_sum_RUB" value="0.5" disabled="disabled"/>
    <input type="hidden" name="val_type" id="val_type" value="RUB" />
    </td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input type="submit" name="swap" value="Заказать выплату" style="height: 30px; margin-top:10px;" /></td>
  </tr>
</table>
</form>
<script language="javascript">PaymentSum(); SetVal();</script>



<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 tabled_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 20");
 
    if($db->NumRows() > 0){
 
          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"><?=$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>
</div>
            </div>
            
<center>
<br>

<br>
</center>


 </div>
            </div>

 </div>
            </div>



 </div>
            </div>

 </div>
            </div>
<center>
<br>

<br>
</center>


 </div>
            </div>

 </div>
 
<center>
<br>

<br>
</center>


 </div>
            </div>

 </div>
            </div>



 </div>
            </div>

 </div>
            </div>
<center>
<br>

<br>
</center>


 </div>
            </div>

 </div>
 
<center>
<br>

<br>
</center>


 </div>
            </div>

 </div>
            </div>



 </div>
            </div>

 </div>
            </div>
<center>
<br>

<br>
</center>


 </div>
            </div>

 </div>
спасибо заранее за ответы: )
 

pligin

Команда форума
Администратор
В файле регистрации есть второй запрос на добавление пользователя
PHP:
$db->Query("INSERT INTO db_users_b (id, user, money_b, last_sbor) VALUES ('$lid','$login','20', '".time()."')");
так вот "20" - это количество на покупку
второй вопрос при введении в регистрации зареганного имейла, выдает что dublicate e-mail как задать условие чтобы выдало типо: Имейл уже зарегистрирован.
PHP:
$db->Query("SELECT COUNT(*) FROM db_users_a WHERE email = '$email'");
                        if($db->FetchRow() > 0){
echo 'Данный Email уже зарегистрирован';
}
и последний вопрос как создать условие сохранение кошеля на ферме, тоже у вас не нашел все грязное в плане там cash поинты и тд мне нужно обычные выплаты превратить вот собственно с сохранением кошеля вот код:
PHP:
if(empty($user_data['purse'])){
$db->Query("UPDATE `tabled_users_b` SET `purse` = '$purse' WHERE `id` = $usid");
}
 

անդեմ

Местный
# Регаем пользователя
$db->Query("INSERT INTO ".$pref."_users_a (user, email, pass, referer, referer_id, date_reg, ip)
VALUES ('$login','{$email}','$passwd','$referer_name','$referer_id','$time',INET_ATON('$ip'))");
$db->Query("INSERT INTO tabled_users_b (id, user, money_b, last_sbor) VALUES ('$lid','$login','1000', '".time()."')");
$lid = $db->LastInsert();
вставил код таблицы у меня там tabled но ничего не происходит не начисляется почему-то....
 

pligin

Команда форума
Администратор

անդեմ

Местный
вот код и еще опять же с условием имейла не получается вроде вставил все как надо но так и пишет по инглишь что дубликация ключа e-mail
PHP:
<?PHP
    
    # Регистрация
    if(isset($_POST["login"])){
    
    $login = $func->IsLogin($_POST["login"]);
    $pass = $func->IsPassword($_POST["pass"]);
    
    $time = time();
    $ip = $func->UserIP;
    $passmd = $func->md5Password($pass);
    
    $referer_id = (isset($_COOKIE["ref"]) AND intval($_COOKIE["ref"]) > 0 AND intval($_COOKIE["ref"]) < 1000000) ? intval($_COOKIE["ref"]) : 1;
    $db->Query("SELECT * FROM ".$pref."_users_a WHERE id = '$referer_id'");
    $r = $db->FetchArray();
    $referer_name = $r["user"];
    $email = $func->IsMail($_POST["email"]);
    
    
            if($login !== false){
            
                if($pass !== false){
            
                    if($pass == $_POST["repass"]){
                        
                        $db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE user = '$login'");
                        if($db->FetchRow() == 0){
                        
                                $db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE email = '$email'");
                        if($db->FetchRow() > 0){

                        # Регаем пользователя
                        $db->Query("INSERT INTO ".$pref."_users_a (user, email, pass, referer, referer_id, date_reg, ip)
                        VALUES ('$login','$email','$passmd','$referer_name','$referer_id','$time',INET_ATON('$ip'))");
                        $db->Query("INSERT INTO tabled_users_b (id, user, money_b, last_sbor) VALUES ('$lid','$login','1000', '".time()."')");

                        $lid = $db->LastInsert();

/*Принудительно пересчитываем количество рефералов у реферера*/
$db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE referer_id = '".$referer_id."'");
$updrefscount = $db->FetchRow();
$db->Query("UPDATE ".$pref."_users_a SET referals = '$updrefscount' WHERE id = '".$referer_id."'");
                        
                        $db->Query("INSERT INTO ".$pref."_users_b (id, user) VALUES ('$lid','$login')");
                        
                        # Вставляем статистику
                        $db->Query("UPDATE ".$pref."_stats SET all_users = all_users +1 WHERE id = '1'");
                        
                    

        
                        
                        
                        
                        # Удаляем рег кей
                        //$db->Query("DELETE FROM ".$pref."_regkey WHERE email = '$email' OR id = '$token_id'");
                        
                        echo "<center><b><font color = 'green'>Вы успешно зарегистрировались. Используйте форму слева для входа в аккаунт</font></b></center><BR />";
                        ?>
                        <?PHP
                        return;
                        
                    
}else echo 'Данный Email уже зарегистрирован';
                        }else echo "<center><b><font color = 'red'>Указанный логин уже используется</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 />";
            
            }else echo "<center><b><font color = 'red'>Логин заполнен неверно</font></b></center><BR />";
        
        
    
    }
    
    
?>
 

pligin

Команда форума
Администратор
PHP:
$func->IsMail($_POST["email"]);
вот код и еще опять же с условием имейла не получается вроде вставил все как надо но так и пишет по инглишь что дубликация ключа e-mail
PHP:
<?PHP
   
    # Регистрация
    if(isset($_POST["login"])){
   
    $login = $func->IsLogin($_POST["login"]);
    $pass = $func->IsPassword($_POST["pass"]);
   
    $time = time();
    $ip = $func->UserIP;
    $passmd = $func->md5Password($pass);
   
    $referer_id = (isset($_COOKIE["ref"]) AND intval($_COOKIE["ref"]) > 0 AND intval($_COOKIE["ref"]) < 1000000) ? intval($_COOKIE["ref"]) : 1;
    $db->Query("SELECT * FROM ".$pref."_users_a WHERE id = '$referer_id'");
    $r = $db->FetchArray();
    $referer_name = $r["user"];
    $email = $func->IsMail($_POST["email"]);
   
   
            if($login !== false){
           
                if($pass !== false){
           
                    if($pass == $_POST["repass"]){
                       
                        $db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE user = '$login'");
                        if($db->FetchRow() == 0){
                       
                                $db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE email = '$email'");
                        if($db->FetchRow() > 0){

                        # Регаем пользователя
                        $db->Query("INSERT INTO ".$pref."_users_a (user, email, pass, referer, referer_id, date_reg, ip)
                        VALUES ('$login','$email','$passmd','$referer_name','$referer_id','$time',INET_ATON('$ip'))");
                        $db->Query("INSERT INTO tabled_users_b (id, user, money_b, last_sbor) VALUES ('$lid','$login','1000', '".time()."')");

                        $lid = $db->LastInsert();

/*Принудительно пересчитываем количество рефералов у реферера*/
$db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE referer_id = '".$referer_id."'");
$updrefscount = $db->FetchRow();
$db->Query("UPDATE ".$pref."_users_a SET referals = '$updrefscount' WHERE id = '".$referer_id."'");
                       
                        $db->Query("INSERT INTO ".$pref."_users_b (id, user) VALUES ('$lid','$login')");
                       
                        # Вставляем статистику
                        $db->Query("UPDATE ".$pref."_stats SET all_users = all_users +1 WHERE id = '1'");
                       
                   

       
                       
                       
                       
                        # Удаляем рег кей
                        //$db->Query("DELETE FROM ".$pref."_regkey WHERE email = '$email' OR id = '$token_id'");
                       
                        echo "<center><b><font color = 'green'>Вы успешно зарегистрировались. Используйте форму слева для входа в аккаунт</font></b></center><BR />";
                        ?>
                        <?PHP
                        return;
                       
                   
}else echo 'Данный Email уже зарегистрирован';
                        }else echo "<center><b><font color = 'red'>Указанный логин уже используется</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 />";
           
            }else echo "<center><b><font color = 'red'>Логин заполнен неверно</font></b></center><BR />";
       
       
   
    }
   
   
?>
ЕЩЕ РАЗ ПРОБУЕМ
это
PHP:
$lid = $db->LastInsert();
должно стоять перед
PHP:
$db->Query("INSERT INTO tabled_users_b (id, user, money_b, last_sbor) VALUES ('$lid','$login','1000', '".time()."')");
Т,К, В ДАННОМ ЗАПРОСЕ ИСПОЛЬЗУЕТСЯ ПЕРЕМЕННАЯ $lib, КОТОРАЯ ДОЛЖНА СУЩЕСТВОВАТЬ ИНАЧЕ ОШИБКА ИЛИ DUBLICATE ENTRY '0'
 

pligin

Команда форума
Администратор
дубликация ключа e-mai
Email должен быть уникальным значением, а не ключом.
$db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE email = '$email'");
if(
$db->FetchRow() > 0){
Будет выдавать ошибку: ты находишь, что в базе есть такой email и все равно продолжаешь работать с ним
 

անդեմ

Местный
Cпасибо с регистрацией разобрался :D
Но вот с выплатами теперь, вот я вставил то что ты указал но ничего не происходит... то есть при нажатии выплатить тупо пропадает все на странице... что не так опять указал
PHP:
<?PHP
    
function ViewPurse($purse){

if( substr($purse,0,1) != "P" ) return false;
if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
if(empty($user_data['purse'])){
$db->Query("UPDATE `tabled_users_b` SET `purse` = '$purse' WHERE `id` = $usid");
}
return $purse;
}
    
    # Заносим выплату
    if(isset($_POST["purse"])){
    $_POST["purse"] = $db->RealEscape($_POST['purse']);
    
        $purse = ViewPurse($_POST["purse"]);
        $purse = $db->RealEscape($_POST['purse']);
        $sum = intval($_POST["sum"]);
        $sum = $db->RealEscape($_POST['sum']);
        $val = "RUB";
        
        if($purse !== false){
            
                if($sum >= $minPay){
                
                    if($sum <= $user_data["money_p"]){
                        
                        # Проверяем на существующие заявки
                        $db->Query("SELECT COUNT(*) FROM tabled_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 / $sonfig_site["ser_per_wmr"]), 2);
                                    
                                    $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                                    if( ($balance) >= ($sum_pay)){
                                    
                                    
                                    
                                    $arTransfer = $payeer->transfer(array(
                                    'curIn' => 'RUB', // счет списания
                                    'sum' => $sum_pay, // сумма получения
                                    'curOut' => 'RUB', // валюта получения
                                    'to' => $purse, // получатель (email)
                                    //'to' => '+71112223344',  // получатель (телефон)
                                    //'to' => 'P1000000',  // получатель (номер счета)
                                    'comment' => iconv('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта WM-Farm")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                                    
                                    
                                    if(empty($user_data['purse'])){
$db->Query("UPDATE `tabled_users_b` SET `purse` = '$purse' WHERE `id` = $usid");
}
                                    
                                        if (!empty($arTransfer["historyId"]))
                                        {   
                                        
                                        
                                            # Снимаем с пользователя
                                            $db->Query("UPDATE tabled_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 tabled_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 tabled_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
                                            $db->Query("UPDATE tabled_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
                                            
                                            echo "<center><font color = 'green'><b>Выплачено!</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><font color = 'red'><b>Не удалось выплатить! Попробуйте позже №1</b></font></center><BR />";
                                
                            }else echo "<center><font color = 'red'><b>Не удалось выплатить! Попробуйте позже №2</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'>Кошелек Payeer указан неверно! Смотрите образец!</font></b></center><BR />";
        
    }
?>
 

pligin

Команда форума
Администратор
Cпасибо с регистрацией разобрался :D
Но вот с выплатами теперь, вот я вставил то что ты указал но ничего не происходит... то есть при нажатии выплатить тупо пропадает все на странице... что не так опять указал
PHP:
<?PHP
   
function ViewPurse($purse){

if( substr($purse,0,1) != "P" ) return false;
if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
if(empty($user_data['purse'])){
$db->Query("UPDATE `tabled_users_b` SET `purse` = '$purse' WHERE `id` = $usid");
}
return $purse;
}
   
    # Заносим выплату
    if(isset($_POST["purse"])){
    $_POST["purse"] = $db->RealEscape($_POST['purse']);
   
        $purse = ViewPurse($_POST["purse"]);
        $purse = $db->RealEscape($_POST['purse']);
        $sum = intval($_POST["sum"]);
        $sum = $db->RealEscape($_POST['sum']);
        $val = "RUB";
       
        if($purse !== false){
           
                if($sum >= $minPay){
               
                    if($sum <= $user_data["money_p"]){
                       
                        # Проверяем на существующие заявки
                        $db->Query("SELECT COUNT(*) FROM tabled_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 / $sonfig_site["ser_per_wmr"]), 2);
                                   
                                    $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                                    if( ($balance) >= ($sum_pay)){
                                   
                                   
                                   
                                    $arTransfer = $payeer->transfer(array(
                                    'curIn' => 'RUB', // счет списания
                                    'sum' => $sum_pay, // сумма получения
                                    'curOut' => 'RUB', // валюта получения
                                    'to' => $purse, // получатель (email)
                                    //'to' => '+71112223344',  // получатель (телефон)
                                    //'to' => 'P1000000',  // получатель (номер счета)
                                    'comment' => iconv('windows-1251', 'utf-8', "Выплата пользователю {$usname} с проекта WM-Farm")
                                    //'anonim' => 'Y', // анонимный перевод
                                    //'protect' => 'Y', // протекция сделки
                                    //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                                    //'protectCode' => '12345', // код протекции
                                    ));
                                   
                                   
                                    if(empty($user_data['purse'])){
$db->Query("UPDATE `tabled_users_b` SET `purse` = '$purse' WHERE `id` = $usid");
}
                                   
                                        if (!empty($arTransfer["historyId"]))
                                        {  
                                       
                                       
                                            # Снимаем с пользователя
                                            $db->Query("UPDATE tabled_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 tabled_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 tabled_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
                                            $db->Query("UPDATE tabled_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
                                           
                                            echo "<center><font color = 'green'><b>Выплачено!</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><font color = 'red'><b>Не удалось выплатить! Попробуйте позже №1</b></font></center><BR />";
                               
                            }else echo "<center><font color = 'red'><b>Не удалось выплатить! Попробуйте позже №2</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'>Кошелек Payeer указан неверно! Смотрите образец!</font></b></center><BR />";
       
    }
?>
посмотри логи ошибок сервера на этот момент - там будут указаны ошибки, которые ты допустил
 

pligin

Команда форума
Администратор
это
$_POST["purse"] = $db->RealEscape($_POST['purse']);
и это
$purse = $db->RealEscape($_POST['purse']);
не одно и тоже ?
зачем ты запись кошелька в базу запихнул в функцию проверки правильности ввода кошелька по регулярке?
зачем ты после проверки правильности ввода кошелька используешь mysqli_real_escape_string?
посмотри предназначение mysqli_real_escape_string...
тут можно продолжать без остановки
 

անդեմ

Местный
это

и это

не одно и тоже ?
зачем ты запись кошелька в базу запихнул в функцию проверки правильности ввода кошелька по регулярке?
зачем ты после проверки правильности ввода кошелька используешь mysqli_real_escape_string?
посмотри предназначение mysqli_real_escape_string...
тут можно продолжать без остановки
все все спасибо разобрался, сделал.
 
Верх