Трех уровневая реферальная система.

  • Автор темы alexsoft59
  • Дата начала
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #41
ZLODEY написал(а):
Я все файлы вытащил из скрипта, осталось код на странице регистрации прописать и работать будет.
Так в чем проблема то встала,прописывай...
 
zirocool
Участник
Сообщения
23
Реакции
0
  • #42
alexsoft59 написал(а):
Так канешно надо,иначе как они формироваться то будут? В чем ты запутался,объясни...
Скинь код signup с трехуровневой рефкой
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #43
zirocool написал(а):
Скинь код signup с трехуровневой рефкой
PHP:
<?PHP
$_OPTIMIZATION["title"] = "Регистрация";
$_OPTIMIZATION["description"] = "Регистрация пользователя в системе";
$_OPTIMIZATION["keywords"] = "Регистрация нового участника в системе";

if(isset($_SESSION["user_id"])){ Header("Location: /account"); return; }
?>

<div class="silver-bk" style=" background: #fff;    position: relative;    z-index: 2;    text-align: center;"><div class="clr"></div>
<br>
<div class="silver-bk2" role="alert"><font color = 'red'><b>ВНИМАНИЕ!</b></font> Уважаемые пользователи, в целях безопасности, <font color = 'red'><b>НЕ ДЕЛАЙТЕ</b></font> в подобных проектах одинаковые пароли, пользуйтесь <a target="_blank" style="color:inherit;text-decoration:underline;" href="https://servahoc.ru/redirect.php?url=http://randstuff.ru/password/">генераторами</a>!</div>
<?PHP
  
    # Регистрация

    if(isset($_POST["login"])){
  
    if(isset($_SESSION["captcha"]) AND strtolower($_SESSION["captcha"]) == strtolower($_POST["captcha"])){
    unset($_SESSION["captcha"]);

    $login = $func->IsLogin($_POST["login"]);
    $pass = $func->IsPassword($_POST["pass"]);
    $rules = isset($_POST["rules"]) ? true : false;
    $time = 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 = "Admin"; }
    }else{ $referer_id = 1; $referer_name = "Admin"; }
  
        if($rules){
            if($ipregs == 0) {

            if($email !== false){
      
            if($login !== false){
          
                if($pass !== false){
          
                    if($pass == $_POST["repass"]){
                      
                        $db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
                        if($db->FetchRow() == 0){
                       $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"];
                        # Регаем пользователя
                        $db->Query("INSERT INTO db_users_a (user, email, pass, referer, ref2, ref3, referer_id, referer_id2, referer_id3, date_reg, ip)
                        VALUES ('$login','{$email}','$pass','$referer_name','$referer_name2','$referer_name3','$referer_id','$referer_id2','$referer_id3', '$time',INET_ATON('$ip'))");
                      
                        $lid = $db->LastInsert();
                      
                        $db->Query("INSERT INTO db_users_b (id, user, a_t, last_sbor) VALUES ('$lid','$login','1', '".time()."')");
                      
                        # Вставляем статистику
                        $db->Query("UPDATE db_stats SET all_users = all_users +1 WHERE id = '1'");
                      
                        echo "<center><b><font color = 'blue'>Регистрация прошла успешно! Авторизуйтесь.</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><font color = 'red'><b>Регистрация с этого IP уже производилась!</b></font></center>";

        }else echo "<center><b><font color = 'red'>Вы не подтвердили правила!</font></b></center><BR />";
  
        }else echo "<center><font color = 'red'><b>Символы с картинки введены неверно!</b></font></center>";

    }
  
  
?>


<BR />
<form action="" method="post">
<center><table width="500" border="0" cellspacing="0" cellpadding="0" style="
    color: #609600;    border: 2px solid #739f2a !important;
    padding: 5px 5px 5px 5px;
    border-radius: 5px;
      background: rgb(225, 255, 255);
">
  <tr>
    <td align="left" style="padding:3px;">Ваш логин:</td>
    <td align="left" style="padding:3px;"><input name="login" type="text" size="25" placeholder="Ваш логин на проекте" maxlength="10" value="<?=(isset($_POST["login"])) ? $_POST["login"] : false; ?>"/></td>
  </tr>
  <tr>

    </tr>
<tr>
    <td align="left" style="padding:3px;">Email:</td>
    <td align="left" style="padding:3px;"><input name="email" type="text" size="25" placeholder="Ваша почта"  maxlength="50" value="<?=(isset($_POST["email"])) ? $_POST["email"] : false; ?>"/></td>
  </tr>
  <tr>

    </tr>
  <tr>
    <td align="left" style="padding:3px;">Пароль:</td>
    <td align="left" style="padding:3px;"><input name="pass" type="password" size="25" placeholder="Придумайте пароль" maxlength="20" /></td>
  </tr>
  <tr>

    </tr>
  <tr>
    <td align="left" style="padding:3px;">Пароль еще раз:</td>
    <td align="left" style="padding:3px;"><input name="repass" type="password" size="25" placeholder="Введите пароль повторно" maxlength="20" /></td>
  </tr>
  <tr>

    </tr>
  <tr>
    <td colspan="2" align="left">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2" align="left" style="padding:3px;">
    С <a href="https://servahoc.ru/redirect.php?url=/rules" target="_blank" class="stn">правилами</a> проекта ознакомлен(а) и принимаю: <input name="rules" type="checkbox" /></td>
  </tr>
<tr>
    <td align="left" style="padding:3px;">
    <a href="https://servahoc.ru/redirect.php?url=#" onclick="ResetCaptcha(this);"><img src="/captcha.php?rnd=<?=rand(1,10000); ?>"  border="0" style="margin:0;"/></a>
    </td>
    <td align="left" style="padding:3px;"><input name="captcha" type="text" size="25" placeholder="Введите символы с картинки" maxlength="50" /></td>
  </tr>
  <tr>
    <td colspan="2" align="left">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2" align="center" style="padding:3px;"><input name="registr" type="submit" value="Завершить" class="btn_kn"></td>
  </tr>
</table></center>
</form>

</div>
<div class="clr"></div>
Только стиль под себя сам пиши там...
 
TyTuKeT
Участник
Сообщения
219
Реакции
37
  • #44
Полный гайд кто даст?
 
romcka8
Местный
Сообщения
65
Реакции
3
  • #45
Спасибо! То что нужно!
 
Andreys
Участник
Сообщения
576
Реакции
40
  • #46
Нужна помощь. не знаю какой запрос в БД надо сделать, вроди дожно получиться 4-х уровневая реф система[/QUOTE]
Делай сразу шесть уровней, и касса взаимопомощи получится)
 
Andreys
Участник
Сообщения
576
Реакции
40
  • #47
alexsoft59 написал(а):
Решил озадачиться поиском трех уровневой рефералки,сам не смог ни чего найти подобного,может кто подскажет что то по этому вопросу?
Ну вы ее сделали или нет?
 
Andreys
Участник
Сообщения
576
Реакции
40
  • #49
alexsoft59 написал(а):
Канешно сделал,иначе зачем бы я заморачивался то?))
А демку есть где посмотреть ?
 
alexsoft59
Капитан очевидность...).
Участник
Сообщения
347
Реакции
29
  • #50
Andreys написал(а):
А демку есть где посмотреть ?
На данный момент тот проект приказал долго жить...))
 
Andreys
Участник
Сообщения
576
Реакции
40
  • #51
alexsoft59 написал(а):
На данный момент тот проект приказал долго жить...))
Че в корзину спустил), ? Можешь посмотреть че в коде не правильно не хотит работать 2 и 3 ур рефералки
Код:
<div class="s-bk-lf">
    <div class="acc-title">Партнерская программа</div>
</div>

<p><center>Количество  ваших рефералов 1-го уровня: <font color="#000;"><?=$refs; ?> чел.</font></center></p>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr  height='25' valign=top align=center>
    <td style='background:#804040; color:#fff;' class="m-tb"> Логин.</td>
    <td style='background:#804040; color:#fff;' class="m-tb">E-mail.</td>
    <td style='background:#804040; color:#fff;' class="m-tb"> Дата регистрации.</td>
    <td style='background:#804040; color:#fff;' class="m-tb"> Доход от партнера.</td>
</tr>

<?PHP
  $all_money = 0;
  $db->Query("SELECT db_users_a.user,db_users_a.email, db_users_a.date_reg, db_users_b.to_referer FROM db_users_a, db_users_b
  WHERE db_users_a.id = db_users_b.id AND db_users_a.referer_id = '$user_id' ORDER BY to_referer DESC");
 
    if($db->NumRows() > 0){
 
          while($ref = $db->FetchArray()){
       
        ?>
        <tr  height="25" class="htt" valign="top" align="center">
            <td align="center"> <?=$ref["user"]; ?>.</td>
            <td align="center"> <?=$ref["email"]; ?>.</td>

            <td align="center"> <?=date("d.m.Y в H:i:s",$ref["date_reg"]); ?>.</td>
            <td align="center"> <?=sprintf("%.2f",$ref["to_referer"]); ?>.</td>
        </tr>

        <?PHP
        $all_money += $ref["to_referer"];
        }
 
    }else echo '<tr><td align="center" colspan="3">У вас нет рефералов</td></tr>'
  ?>

</table>

<br>
<p><center>Количество  ваших рефералов 2-го уровня: </center></p>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr height='25' valign=top align=center>
    <td style='background:#804040; color:#fff;' class="m-tb"> Логин.</td>
    <td style='background:#804040; color:#fff;' class="m-tb">E-mail.</td>
    <td style='background:#804040; color:#fff;' class="m-tb"> Дата регистрации.</td>
    <td style='background:#804040; color:#fff;' class="m-tb"> Доход от партнера.</td>
</tr>

<?PHP
  $all_money = 0;
  $db->Query("SELECT  user,email,date_reg,doxod2 FROM db_users_a
  WHERE ref2 = '$user_id'");
 
    if($db->NumRows() > 0){
 
          while($ref = $db->FetchArray()){
       
        ?>
        <tr height="25" class="htt" valign="top" align="center">
            <td align="center"> <?=$ref["user"]; ?>.</td>
            <td align="center"> <?=$ref["email"]; ?>.</td>

            <td align="center"> <?=date("d.m.Y в H:i:s",$ref["date_reg"]); ?>.</td>
            <td align="center"> <?=sprintf("%.2f",$ref["doxod2"]); ?>.</td>
        </tr>

        <?PHP
        }
 
    }else echo '<tr><td align="center" colspan="3">У вас нет рефералов</td></tr>'
  ?>

</table>
<br>
<p><center>Количество  ваших рефералов 3-го уровня: </center></p>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr height='25' valign=top align=center>
    <td style='background:#804040; color:#fff;' class="m-tb"> Логин.</td>
    <td style='background:#804040; color:#fff;' class="m-tb">E-mail.</td>

    <td style='background:#804040; color:#fff;' class="m-tb"> Дата регистрации.</td>
    <td style='background:#804040; color:#fff;' class="m-tb"> Доход от партнера.</td>
</tr>

<?PHP
  $all_money = 0;
  $db->Query("SELECT  user,email,date_reg,doxod2 FROM db_users_a
  WHERE ref3 = '$user_id'");
 
    if($db->NumRows() > 0){
 
          while($ref = $db->FetchArray()){
       
        ?>
        <tr height="25" class="htt" valign="top" align="center">
            <td align="center"> <?=$ref["user"]; ?>.</td>
            <td align="center"> <?=$ref["email"]; ?>.</td>

            <td align="center"> <?=date("d.m.Y в H:i:s",$ref["date_reg"]); ?>.</td>
            <td align="center"> <?=sprintf("%.2f",$ref["doxod3"]); ?>.</td>
        </tr>

        <?PHP
        }
 
    }else echo '<tr><td align="center" colspan="3">У вас нет рефералов</td></tr>'
  ?>

</table>
<div class="clr"></div>   
</div>

<div class="clr"></div>
 
Сверху