РЕШЕНО Выдача награды за рефералов 2 и 3 уровня

  • Автор темы Iiieva
  • Дата начала
Статус
В этой теме нельзя размещать новые ответы.
Iiieva
Участник
Сообщения
8
Реакции
0
Подскажите как сделать что бы реферу выдавало награду и за рефералов 2 и 3 уровня, щас выдает только за рефералов 1 уровня
Код:
<?PHP
$_OPTIMIZATION["title"] = "Регистрация";
$_OPTIMIZATION["description"] = "Регистрация пользователя в системе";
$_OPTIMIZATION["keywords"] = "Регистрация нового участника в системе";

if(isset($_SESSION["user_id"])){ Header("Location: /store"); return; }
?>
        <div class="slim-pageheader">
          <ol class="breadcrumb slim-breadcrumb">
            <li class="breadcrumb-item"><a href="https://servahoc.ru/redirect.php?url=#">Главная</a></li>
            <li class="breadcrumb-item active" aria-current="page">Регистрация</li>
          </ol>
          <h6 class="slim-pagetitle">Создание аккаунта</h6>
        </div>
<?PHP
    
    # Регистрация

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

$chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP";
$max=10;
$size=StrLen($chars)-1;
$paypass = null;
while($max--)
$paypass .= $chars[rand(0,$size)];
    $login = $func->IsLogin($_POST["login"]);
    $name = strip_tags($_POST["name"]);
    $pass = $func->IsPassword($_POST["pass"]);
    $rules = isset($_POST["rules"]) ? true : false;
    $time = time();
    $date = time();
    $ip = $func->UserIP;
    $ipregs = $db->Query("SELECT * FROM `db_users_a` WHERE INET_NTOA(db_users_a.ip) = '$ip' ");
    $ipregs = $db->NumRows();

    $email = $func->IsMail($_POST["email"]);
    $referer_id = (isset($_COOKIE["i"]) AND intval($_COOKIE["i"]) > 0 AND intval($_COOKIE["i"]) < 1000000) ? intval($_COOKIE["i"]) : 1;
    $referer_name = "";
                        if($referer_id != 1){
                        
                            $db->Query("SELECT user FROM db_users_a WHERE id = '$referer_id' LIMIT 1");
                            
                            if($db->NumRows() > 0){
                            
                                $referer_name = $db->FetchRow();
                            
                            }else{ $referer_id = 1; $referer_name = "-"; }
                        
                        }else{ $referer_id = 1; $referer_name = "-"; }

        if($email !== false){
        
            if($login !== false){
                
             $db->Query("SELECT COUNT(*) FROM db_users_a WHERE email = '$email'");
             if($db->FetchRow() == 0){
                
              if($ipregs == 0) {
            
                if($pass !== false){
                        
                        $db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
                        if($db->FetchRow() == 0){

            /* Реф 3 уровня ================== */
                        $db->Query("SELECT referer, referer_id FROM db_users_a WHERE id = '$referer_id' LIMIT 1");
                        $stats_data = $db->FetchArray();
                        $referer_name2=$stats_data["referer"];
                        $referer_id2=$stats_data["referer_id"];

                        $db->Query("SELECT referer, referer_id FROM db_users_a WHERE id = '$referer_id2' LIMIT 1");
                        $stats_data3 = $db->FetchArray();
                        $referer_name3=$stats_data3["referer"];
                        $referer_id3=$stats_data3["referer_id"];
                        /* ================== */


                        preg_match('/([a-z0-9aа-я\.])+([a-z0-9а-я\-])+(\.)([a-z0-9а-я]{2,5}\.)?([a-z0-9а-я]{2,5})/i',$_COOKIE['rsite'], $out);
                        $out=$db->RealEscape($out[0]);
                        
                        # Регаем пользователя
                        $db->Query("INSERT INTO db_users_a (user, name, email, paypass, pass, referer, referer_id, referer_id2, referer_id3, date_reg, refsite, ip)
                        VALUES ('$login','$name','{$email}','$paypass','$pass','$referer_name','$referer_id','$referer_id2','$referer_id3','$time','$out',INET_ATON('$ip'))");

// получатель
  $to  = $email;

  // Тема
  $subject = 'Регистрация аккаунта на сайте NodTex.ru';

  // Сообщение
  $message =   "
<html>
<head >
<title>Успешная регистрация в проекте NodTex.ru</title>
</head>
  <body>
  <center>
    <font size='5'>Спасибо за регистрацию на нашем проекте NodTex.ru!</font>
    <p>На ваш баланс аккаунта $login зачислено 10 рублей.</p>
    <hr>
    <p><b>Ваши данные для входа в аккаунт:</b></p>
    <p><small>Электронная почта: $email<br>
    Пароль: $pass</small></p>
  </center>
</body>
</html>
";

  // Указываем правильный MIME-тип сообщения:
  $headers  =   'MIME-Version: 1.0' . "\r\n";
  $headers.= "Content-type: text/html; charset=Windows-1251\r\n";
  $headers.= "Date: ".date("m.d.Y (H:i:s)",time())."\r\n";
  $headers.= "From: support@nodtex.ru \r\n";



  // Отправляем сообщение
  mail($to, $subject,   $message, $headers);
                        
                        $lid = $db->LastInsert();
                        
                        $db->Query("INSERT INTO db_users_b (id, user, money, last_sbor) VALUES ('$lid','$login','0', '".time()."')");
                        $db->Query("INSERT INTO wmrush_pm (user_id_in, login_in, user_id_out, login_out, theme, text, status, date, inbox, icon) VALUES ('$referer_id', '$referer_name', '1', 'Admin', 'У вас появился новый реферал', 'У вас появился новый реферал! Ник реферала: $login', '0', '$date', 1, 'square-10 bg-purple')");
                        $db->Query("INSERT INTO wmrush_pm (user_id_in, login_in, user_id_out, login_out, theme, text, status, date, inbox, icon) VALUES ('$lid', '$login', '1', 'Admin', 'Добро пожаловать', 'Добро пожаловать! Для начала вам рекомендуется инвестировать в выбранный вами тариф.', '0', '$date', 1, 'square-10 bg-teal')");
                        $db->Query("INSERT INTO db_logs (user_id, user, theme, date, bg, icon) VALUES ('$lid', '$login', 'Зарегистрировался', '$date', 'noavatar.png', 'square-8 bg-info mg-r-5 rounded-circle')");
                        $db->Query("INSERT INTO db_store (user_id, honey, honey_lvl) VALUES ('$lid','0','0')");
                        
                        
                        
                        
                        # +100 серебра рефереру за рефа
                        if (empty($referer_name)){
                        //echo "Пусто, ничего не делаем!";
                        }
                        else
                        {
                            $db->Query("SELECT referer, referer_id FROM db_users_a WHERE id = '$lid' ");
                            $ref_bonus = $db->FetchArray();
                            $user_name = $ref_bonus["referer"];
                            $ref_id = $ref_bonus["referer_id"];
                            $db->Query("UPDATE db_users_b SET money = money +1 WHERE user = '$user_name' AND id = '$ref_id' ");

                        }
                        # Вставляем статистику
                        $db->Query("UPDATE db_stats SET all_users = all_users +1 WHERE id = '1'");

                        $db->Query("SELECT * FROM db_users_a WHERE id = '$lid'");           
                        $log_data = $db->FetchArray();
                        $db->Query("UPDATE db_users_a SET date_login = '".time()."', ip = INET_ATON('".$func->UserIP."') WHERE id = '".$log_data["id"]."'");
                        
                        $_SESSION["user_id"] = $log_data["id"];
                        $_SESSION["user"] = $log_data["user"];
                        $_SESSION["referer_id"] = $log_data["referer_id"];
                        Header("Location: /profile");
                        
                        ?>
                        <?PHP
                        return;
                        }else echo "<center><b><div class ='alert alert-danger'>Указанный логин уже используется!</div></b></center><BR />";
            
                }else echo "<center><b><div class ='alert alert-danger'>Пароль заполнен неверно!</div></b></center><BR />";
                
               }else echo "<center><b><div class ='alert alert-warning'>Регистрация с этого IP или компьютера уже производилась!</div></b></center><BR />";

             }else echo "<center><b><div class ='alert alert-warning'>С данной электронной почтой уже регистрировались!</div></b></center><BR />";
              
            }else echo "<center><b><div class ='alert alert-danger'>Логин заполнен неверно!</div></b></center><BR />";

        }else echo "<center><div class ='alert alert-danger'>Email имеет неверный формат!</div></center>";


    
        if($emailregs == 0) {

            if($rules){

                if($email !== false){
        
                    if($login !== false){
            
                        if($pass !== false){
            
                            if($pass !== false){
                        
                                $db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
                                if($db->FetchRow() == 0){
                        
                                # Регаем пользователя
                                $db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, date_reg, ip)
                                VALUES ('$login','{$email}','$pass','$referer_name','$referer_id','$time',INET_ATON('$ip'))");
                        
                                $lid = $db->LastInsert();
                        
                                $db->Query("INSERT INTO db_users_b (id, user, a_t, last_sbor, money_b) VALUES ('$lid','$login','0', '".time()."',100)");
                        
                                # Вставляем статистику
                                # +100 серебра рефереру за рефа

                                if (empty($referer_name)){
                                //echo "Пусто, ничего не делаем!";
                                }
                                else
                                {
                                $db->Query("SELECT referer, referer_id FROM db_users_a WHERE id = '$lid' ");
                                $ref_bonus = $db->FetchArray();
                                $user_name = $ref_bonus["referer"];
                                $ref_id = $ref_bonus["referer_id"];
                                $db->Query("UPDATE db_users_b SET money = money +1 WHERE user = '$user_name' AND id = '$ref_id' ");
                                }
                                
                                $db->Query("UPDATE db_stats SET all_users = all_users +1 WHERE id = '1'");
                        
                                echo "<center><b><font color = 'green'>Вы успешно зарегистрировались.</font></b></center><BR />";
                                ?></div>
                                <div class="clr"></div>   
                                <?PHP
                                return;
                                }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 />";

                }else echo "<center><font color = 'red'><b>Email имеет неверный формат</b></font></center>";

            }else echo "<center><b><font color = 'red'>Вы не подтвердили правила</font></b></center><BR />";
    
        }else echo "<center><font color = 'red'><b>Указанный Email уже есть в нашей базе!</b></font></center>";
        
}
?>
        <div class="section-wrapper">
          <center><label class="section-title">Придумайте данные для своего аккаунта</label>
          <p class="mg-b-20 mg-sm-b-40">Создавать более одного аккаунта строго запрещено!</p></center>
<form method="POST" action="">
          <div class="form-layout">
            <div class="row mg-b-25">
              <div class="col-lg-6">
                <div class="form-group">
                  <label class="form-control-label">Имя:</label>
                  <input class="form-control" type="text" name="name" placeholder="Введите имя">
                </div>
              </div><!-- col-4 -->
              <div class="col-lg-6">
                <div class="form-group">
                  <label class="form-control-label">Логин: <span class="tx-danger">*</span></label>
                  <input class="form-control" type="text" minlength="5" name="login" maxlength="12" placeholder="Введите логин">
                </div>
              </div><!-- col-4 -->
              <div class="col-lg-6">
                <div class="form-group">
                  <label class="form-control-label">Email: <span class="tx-danger">*</span></label>
                  <input class="form-control" type="text" name="email" placeholder="Введите email">
                </div>
              </div><!-- col-4 -->
              <div class="col-lg-6">
                <div class="form-group">
                  <label class="form-control-label">Пароль: <span class="tx-danger">*</span></label>
                  <input type="password" class="form-control" name="pass" placeholder="Введите пароль">
                </div>
              </div><!-- col-8 -->
            </div><!-- row -->

            <div class="form-layout-footer">
                <tr>
                <td colspan="2" align="left" style="padding:3px;">
                <center><h5>С <a href="https://servahoc.ru/redirect.php?url=/rules" target="_blank" class="stn">правилами/условиями</a> проекта ознакомлен(а) и принимаю: <input name="rules" type="checkbox" /></h5></center></td>
  </tr>
                
                
              <button class="btn btn-primary bd-0 btn-lg" type="submit" name="create" style="width: 100%;">Создать аккаунт</button>
            </div><!-- form-layout-footer -->
          </div><!-- form-layout -->
</form>
        </div>
 
kolyaka1051
Местный
Сообщения
77
Реакции
19
Telegram
kolyaka105
Так же как и реферал первого уровня, только $referer_id2 и $referer_id3
 
Iiieva
Участник
Сообщения
8
Реакции
0
kolyaka105 написал(а):
Так же как и реферал первого уровня, только $referer_id2 и $referer_id3
ну код на получение награды за рефа вот
Код:
                            $db->Query("SELECT referer, referer_id FROM db_users_a WHERE id = '$lid' ");
                            $ref_bonus = $db->FetchArray();
                            $user_name = $ref_bonus["referer"];
                            $ref_id = $ref_bonus["referer_id"];
                            $db->Query("UPDATE db_users_b SET money = money +1 WHERE user = '$user_name' AND id = '$ref_id' ");
пробовал сделать так но награду не дает
Код:
                            $db->Query("SELECT referer, referer_id, referer_id2, referer_id3 FROM db_users_a WHERE id = '$lid' ");
                            $ref_bonus = $db->FetchArray();
                            $user_name = $ref_bonus["referer"];
                            $ref_id = $ref_bonus["referer_id, referer_id2, referer_id3"];
                            $db->Query("UPDATE db_users_b SET money = money +1 WHERE user = '$user_name' AND id = '$ref_id' ");
[/CODE
 
serega393
Местный
Сообщения
43
Реакции
1
Код:
$db->Query("SELECT `referer_id`, `referer_id2`, `referer_id3` FROM `db_users_a` WHERE `id` = '".$lid."' ");
                            
                            $res_ref = $db->FetchArray();
                            
                            if ($res_ref['referer_id'] > 0)
                            {   
                              $db->Query("UPDATE `db_users_b` SET `money` = `money` + '1' WHERE `id` = '".$res_ref['referer_id']."' ");
                            }
                            
                            if ($res_ref['referer_id2'] > 0)
                            {   
                              $db->Query("UPDATE `db_users_b` SET `money` = `money` + '1' WHERE `id` = '".$res_ref['referer_id2']."' ");
                            }
                            
                            if ($res_ref['referer_id3'] > 0)
                            {   
                              $db->Query("UPDATE `db_users_b` SET `money` = `money` + '1' WHERE `id` = '".$res_ref['referer_id3']."' ");
                            }
 
Iiieva
Участник
Сообщения
8
Реакции
0
serega393 написал(а):
Код:
$db->Query("SELECT `referer_id`, `referer_id2`, `referer_id3` FROM `db_users_a` WHERE `id` = '".$lid."' ");
                          
                            $res_ref = $db->FetchArray();
                          
                            if ($res_ref['referer_id'] > 0)
                            { 
                              $db->Query("UPDATE `db_users_b` SET `money` = `money` + '1' WHERE `id` = '".$res_ref['referer_id']."' ");
                            }
                          
                            if ($res_ref['referer_id2'] > 0)
                            { 
                              $db->Query("UPDATE `db_users_b` SET `money` = `money` + '1' WHERE `id` = '".$res_ref['referer_id2']."' ");
                            }
                          
                            if ($res_ref['referer_id3'] > 0)
                            { 
                              $db->Query("UPDATE `db_users_b` SET `money` = `money` + '1' WHERE `id` = '".$res_ref['referer_id3']."' ");
                            }
Спасибо большое, помог. Тему можно закрывать
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху