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

  • Автор темы անդեմ
  • Дата начала
անդեմ
Местный
Сообщения
56
Реакции
16
Как установить собственно вот 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="https://servahoc.ru/redirect.php?url=http://payeeer.ru/create" target="_blank">Создание счета в Payeer</a> <BR />
 - <a href="https://servahoc.ru/redirect.php?url=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
Участник
Сообщения
3.654
Реакции
1.337
В файле регистрации есть второй запрос на добавление пользователя
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");
}
 
անդեմ
Местный
Сообщения
56
Реакции
16
# Регаем пользователя
$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
Участник
Сообщения
3.654
Реакции
1.337
անդեմ написал(а):
это должно стоять перед этим
անդեմ написал(а):
$db->Query("INSERT INTO tabled_users_b (id, user, money_b, last_sbor) VALUES ('$lid','$login','1000', '".time()."')");
как ты можешь использовать переменную, которой еще не существует?
 
անդեմ
Местный
Сообщения
56
Реакции
16
pligin написал(а):
это должно стоять перед этим

как ты можешь использовать переменную, которой еще не существует?
сделал как ты сказал вылезла новая ошибка... Duplicate entry '0' for key 'PRIMARY' теперь как это исправит?
 
pligin
Участник
Сообщения
3.654
Реакции
1.337
անդեմ написал(а):
сделал как ты сказал вылезла новая ошибка... Duplicate entry '0' for key 'PRIMARY' теперь как это исправит?
скинь код, который у тебя получился, для добавления пользователя в базу
 
անդեմ
Местный
Сообщения
56
Реакции
16
вот код и еще опять же с условием имейла не получается вроде вставил все как надо но так и пишет по инглишь что дубликация ключа 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
Участник
Сообщения
3.654
Реакции
1.337
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
Участник
Сообщения
3.654
Реакции
1.337
անդեմ написал(а):
дубликация ключа e-mai
Email должен быть уникальным значением, а не ключом.
անդեմ написал(а):
$db->Query("SELECT COUNT(*) FROM ".$pref."_users_a WHERE email = '$email'");
if(
$db->FetchRow() > 0){
Будет выдавать ошибку: ты находишь, что в базе есть такой email и все равно продолжаешь работать с ним
 
անդեմ
Местный
Сообщения
56
Реакции
16
  • #10
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
Участник
Сообщения
3.654
Реакции
1.337
  • #11
անդեմ написал(а):
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
Участник
Сообщения
3.654
Реакции
1.337
  • #12
это
անդեմ написал(а):
$_POST["purse"] = $db->RealEscape($_POST['purse']);
и это
անդեմ написал(а):
$purse = $db->RealEscape($_POST['purse']);
не одно и тоже ?
зачем ты запись кошелька в базу запихнул в функцию проверки правильности ввода кошелька по регулярке?
зачем ты после проверки правильности ввода кошелька используешь mysqli_real_escape_string?
посмотри предназначение mysqli_real_escape_string...
тут можно продолжать без остановки
 
անդեմ
Местный
Сообщения
56
Реакции
16
  • #13
pligin написал(а):
это

и это

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