Партнерская программа 5 уровней

  • Автор темы APTEMOH
  • Дата начала

Как вам тема?

  • Супер! Давай еще!

  • Пойдет!

  • Я так же могу!

  • Ацтой!


Результаты будут видны только после голосования.
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
Всем добра!

Доделал и довел до ума партнерку. Итак, встречайте Партнерская программа 5 уровней :blind:

Нам понадобится:
- прямые руки
- редактор кода
- хорошее настроение
- чашка кофе/чая
- payeer_merchant.php
- pages - _signup.php
- pages - account - _referals.php
- pages - account - _user_account.php
- phpmyadmin и FTP клиент

Итак, выпиваем кофе/чай :tost: и начинаем:
1. В файле payeer_merchant.php ищем:
Код:
$to_referer = ($serebro * 0.10); (63-я строка)
Удаляем строку или комментируем:
Код:
//$to_referer = ($serebro * 0.10); или /* тут код */
Ниже добавляем:
Код:
 /* ====== Рефералка 5 уровней ====== */
$db->Query("SELECT user, referer_id, referer_id2, referer_id3, referer_id4, referer_id5 FROM db_users_a WHERE id = '{$user_id}' LIMIT 1");
    $user_ardata = $db->FetchArray();
    $ref2 = $user_ardata["referer_id2"];
    $ref3 = $user_ardata["referer_id3"];
    $ref4 = $user_ardata["referer_id4"];
    $ref5 = $user_ardata["referer_id5"];

    # Задаем процент рефки
    $to_referer  = ($serebro * 0.04); // Первый уровень - 4 процента
    $to_referer2 = ($serebro * 0.03); // Второй уровень - 3 процента
    $to_referer3 = ($serebro * 0.01); // Третий уровень - 1 процент
    $to_referer4 = ($serebro * 0.01); // Четвертый уровень - 1 процент
    $to_referer5 = ($serebro * 0.01); // Пятый уровень - 1 процент

    $db->Query("UPDATE db_users_b SET money_b = money_b + $to_referer2 WHERE id = '$ref2'");
    $db->Query("UPDATE db_users_b SET money_b = money_b + $to_referer3 WHERE id = '$ref3'");
    $db->Query("UPDATE db_users_b SET money_b = money_b + $to_referer4 WHERE id = '$ref4'");
    $db->Query("UPDATE db_users_b SET money_b = money_b + $to_referer5 WHERE id = '$ref5'");
    $db->Query("UPDATE db_users_a SET doxod2 = doxod2 + $to_referer2 WHERE id = '$user_id'");
    $db->Query("UPDATE db_users_a SET doxod3 = doxod3 + $to_referer3 WHERE id = '$user_id'");
    $db->Query("UPDATE db_users_a SET doxod4 = doxod4 + $to_referer4 WHERE id = '$user_id'");
    $db->Query("UPDATE db_users_a SET doxod5 = doxod5 + $to_referer5 WHERE id = '$user_id'");
    /* ====== /Рефералка 5 уровней ====== */

Находим код и опускаем ниже (ниже кода который выше):

Код:
 # Зачисляем средства НАМ )
    $db->Query("UPDATE db_users_b
                SET money_b = money_b + '$serebro',
                   e_t = e_t + '$add_tree',
                   to_referer = to_referer + '$to_referer',
                   last_sbor = '$lsb',
                   insert_sum = insert_sum + '$ik_payment_amount'
                WHERE id = '{$user_id}'");
2. В файле _signup.php ищем строку:
Код:
 $db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'"); (162-я строка)
                        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("SELECT referer, referer_id FROM db_users_a WHERE id = '$referer_id3' LIMIT 1");
                        $stats_data4 = $db->FetchArray();
                        $referer_name4=$stats_data4["referer"];
                        $referer_id4=$stats_data4["referer_id"];

                        $db->Query("SELECT referer, referer_id FROM db_users_a WHERE id = '$referer_id4' LIMIT 1");
                        $stats_data5 = $db->FetchArray();
                        $referer_name5=$stats_data5["referer"];
                        $referer_id5=$stats_data5["referer_id"];

                        # Регаем пользователя
                        $db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, referer_id2, referer_id3, referer_id4, referer_id5, date_reg, ip)
                        VALUES ('$login','{$email}','$pass','$referer_name','$referer_id','$referer_id2','$referer_id3','$referer_id4','$referer_id5', '$time',INET_ATON('$ip'))");
                        /* ================== */

Ищем такой код и удаляем его или закомментируем (он уже не нужен):
Код:
 # Регаем пользователя
$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'))");
3. В файле _referals.php ищем строку:
Код:
 }else echo '<tr><td align="center" colspan="3">У вас нет рефералов 1 уровня</td></tr>'
  ?>
</table>
Ниже вставляем:
Код:
 <!-- ============================================== -->

<?PHP
$db->Query("SELECT COUNT(*) FROM db_users_a WHERE referer_id2 = '$user_id'");
$refs2 = $db->FetchRow(); // Считаем рефералов второго уровня

$db->Query("SELECT COUNT(*) FROM db_users_a WHERE referer_id3 = '$user_id'");
$refs3 = $db->FetchRow(); // Считаем рефералов третьего уровня

$db->Query("SELECT COUNT(*) FROM db_users_a WHERE referer_id4 = '$user_id'");
$refs4 = $db->FetchRow(); // Считаем рефералов четвертого уровня

$db->Query("SELECT COUNT(*) FROM db_users_a WHERE referer_id5 = '$user_id'");
$refs5 = $db->FetchRow(); // Считаем рефералов пятого уровня
?>

<!-- ========= 2-ой уровень ======= -->

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

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

<?PHP
  $all_money = 0;
  $db->Query("SELECT  user,date_reg,doxod2 FROM db_users_a WHERE referer_id2 = '$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"> <?=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">У вас нет рефералов 2 уровня</td></tr>'
  ?>

</table>
<!-- ========= /2-ой уровень ======= -->
<br>
<!-- ========= 3-ий уровень ======= -->
<p><center>Количество  ваших рефералов 3-го уровня: <font color="#000;"><?=$refs3; ?> чел.</font></center></p>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr height='25' valign=top align=center>
    <td class="m-tb"> Логин</td>

    <td class="m-tb"> Дата регистрации</td>
    <td class="m-tb"> Доход от партнера</td>
</tr>

<?PHP
  $all_money = 0;
  $db->Query("SELECT  user,date_reg,doxod3 FROM db_users_a WHERE referer_id3 = '$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"> <?=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">У вас нет рефералов 3 уровня</td></tr>'
?>
</table>
<!-- ========= /3-ий уровень ======= -->
<br>
<!-- ========= 4-ый уровень ======= -->
<p><center>Количество  ваших рефералов 4-го уровня: <font color="#000;"><?=$refs4; ?> чел.</font></center></p>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr height='25' valign=top align=center>
    <td class="m-tb"> Логин</td>

    <td class="m-tb"> Дата регистрации</td>
    <td class="m-tb"> Доход от партнера</td>
</tr>

<?PHP
  $all_money = 0;
  $db->Query("SELECT  user,date_reg,doxod4 FROM db_users_a WHERE referer_id4 = '$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"> <?=date("d.m.Y в H:i:s",$ref["date_reg"]); ?> </td>
            <td align="center"> <?=sprintf("%.2f",$ref["doxod4"]); ?> </td>
        </tr>

        <?PHP
        }

    }else echo '<tr><td align="center" colspan="3">У вас нет рефералов 4 уровня</td></tr>'
?>
</table>
<!-- ========= /4-ый уровень ======= -->
<br>
<!-- ========= 5-ый уровень ======= -->
<p><center>Количество  ваших рефералов 5-го уровня: <font color="#000;"><?=$refs5; ?> чел.</font></center></p>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr height='25' valign=top align=center>
    <td class="m-tb"> Логин</td>

    <td class="m-tb"> Дата регистрации</td>
    <td class="m-tb"> Доход от партнера</td>
</tr>

<?PHP
  $all_money = 0;
  $db->Query("SELECT  user,date_reg,doxod5 FROM db_users_a WHERE referer_id5 = '$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"> <?=date("d.m.Y в H:i:s",$ref["date_reg"]); ?> </td>
            <td align="center"> <?=sprintf("%.2f",$ref["doxod5"]); ?> </td>
        </tr>

        <?PHP
        }

    }else echo '<tr><td align="center" colspan="3">У вас нет рефералов 5 уровня</td></tr>'
?>
</table>
<!-- ========= /5-ый уровень ======= -->

<!-- ============================================== -->

4. В файле _user_account.php ищем:
Код:
$prof_data = $db->FetchArray(); (8-я строка)
Ниже вставляем:
Код:
 # ========= вывод всего заработано на рефералах ========= #
        $db->Query("SELECT doxod2 FROM db_users_a WHERE referer_id2 = '$user_id'");
        $doxod_refs2 = $db->FetchArray();
        $doxod_refs2['doxod2'];

        $db->Query("SELECT doxod2,doxod3,doxod4,doxod5 FROM db_users_a WHERE referer_id3 = '$user_id'");
        $doxod_refs3 = $db->FetchArray();
        $doxod_refs3['doxod3'];

        $db->Query("SELECT doxod4 FROM db_users_a WHERE referer_id4 = '$user_id'");
        $doxod_refs4 = $db->FetchArray();
        $doxod_refs4['doxod4'];

        $db->Query("SELECT doxod5 FROM db_users_a WHERE referer_id5 = '$user_id'");
        $doxod_refs5 = $db->FetchArray();
        $doxod_refs5['doxod5'];

        $zarab_na_refax = $prof_data["from_referals"] + $doxod_refs2['doxod2'] + $doxod_refs3['doxod3'] + $doxod_refs4['doxod4'] + $doxod_refs5['doxod5'];
# ========= /вывод всего заработано на рефералах ========= #
Ищем строку: (58я - строка)

Код:
<td align="left" style="padding:3px;">Заработано на рефералах</td>
    <td align="left" style="padding:3px;"><font color="#000;"><?=sprintf("%.2f",$zarab_na_refax); ?> cеребра</font></td>
В ней
Код:
$prof_data["from_referals"]
заменить на
Код:
$zarab_na_refax
5. Делаем запрос к базе:

Код:
 ALTER TABLE `db_users_a` ADD (
  `referer_id2` int(11) NOT NULL DEFAULT '0',
  `referer_id3` int(11) NOT NULL DEFAULT '0',
  `referer_id4` int(11) NOT NULL DEFAULT '0',
  `referer_id5` int(11) NOT NULL DEFAULT '0',
  `doxod2` int(11) NOT NULL DEFAULT '0',
  `doxod3` int(11) NOT NULL DEFAULT '0',
  `doxod4` int(11) NOT NULL DEFAULT '0',
  `doxod5` int(11) NOT NULL DEFAULT '0'
)
Или ручками:

Все!!! :) Сохраняем, заливаем на сервер, допиваем кофе/чай, наслаждаемся работой. :applause:

P.S. От спасибок и $ :money: не откажусь.
P.P.S. Под хайд прятать это дело? ;)
 
Последнее редактирование:
The Doshs
Участник
Сообщения
383
Реакции
63
Не надо,пусть так лучше.
 
LexxTver
Участник
Сообщения
18
Реакции
6
Все сделал, выдает при реге "Unknown column 'ref2' in 'field list'"
 
LexxTver
Участник
Сообщения
18
Реакции
6
Разобрался, надо в таблицу еще добавить ref2, ref3, ref4, ref5.
Спасибо огромное автору. Большой респект!
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
LexxTver написал(а):
Разобрался, надо в таблицу еще добавить ref2, ref3, ref4, ref5.
Не надо, они не нужны.
UPDATE: Удалить с запроса ref2, ref3, ref4, ref5, Поправил в шапке.

LexxTver написал(а):
Спасибо огромное автору. Большой респект!
Всегда пожалуйста!
 
Последнее редактирование модератором:
AchtungDen
Участник
Сообщения
14
Реакции
0
У меня в БД ошибка
 
Последнее редактирование:
AchtungDen
Участник
Сообщения
14
Реакции
0
AchtungDen написал(а):
У меня в БД ошибка
Справился с этой проблемой, НО столкнулся с новой. HELP ME PLEASE!!!
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
AchtungDen написал(а):
Справился с этой проблемой, НО столкнулся с новой. HELP ME PLEASE!!!
Нужно смотреть что передается мускулу, а что нет. Давайте файл - гляну. Возможно переменные разные, или наоборот забивают друг друга одинаковые.
Ошибка: что-то не приходит в базу (не хватает поля).
 
AchtungDen
Участник
Сообщения
14
Реакции
0
APTEMOH написал(а):
Нужно смотреть что передается мускулу, а что нет. Давайте файл - гляну. Возможно переменные разные, или наоборот забивают друг друга одинаковые.
Ошибка: что-то не приходит в базу (не хватает поля).
Вот http://rghost.ru/6PccRHznn
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
  • #10
AchtungDen написал(а):
У Вас в скрипте
Код:
 $UserIP = $_SERVER['REMOTE_ADDR'];
лишнее, т.к. нигде не используется.

Есть функция
Код:
 $ip = $func->UserIP;
Касательно ошибки:

Код:
 $referer_name = "";  36-я строка
пустая переменная. Поэтому нужно что-то с ней сделать.

У меня так:

Код:
 $referer_id = $data_t["referer_id"];
    $referer_name = $data_t["referer_name"];
    $email = $data_t["email"];
 
The Doshs
Участник
Сообщения
383
Реакции
63
  • #11
APTEMOH написал(а):
Не надо, они не нужны.
UPDATE: Удалить с запроса ref2, ref3, ref4, ref5, Поправил в шапке.


Всегда пожалуйста!
Не вымогать!!
 
Nemiroff
Участник
Сообщения
27
Реакции
0
  • #12
У меня вот такая вот проблема.

Даже если я буду рефером 2-го уровня.
Меня кидает во все уровни.

И как такое может быть?

PHP:
 $db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, referer_id2, referer_id3, referer_id4, referer_id5, date_reg, ip)
                        VALUES ('$login','{$email}','$pass','$referer_name','$referer_name2','$referer_name3','$referer_name4','$referer_name5','$referer_id','$referer_id2','$referer_id3','$referer_id4','$referer_id5', '$time',INET_ATON('$ip'))");
куда вставляется referer_name2-5
 
Последнее редактирование модератором:
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
  • #13
Видимо, что то не так сделали. Все делали по инструкции?

У меня все работает. Как проверяли? Как регистрировались? Cookies чистили? )
 
Nemiroff
Участник
Сообщения
27
Реакции
0
  • #14
APTEMOH написал(а):
Видимо, что то не так сделали. Все делали по инструкции?

У меня все работает. Как проверяли? Как регистрировались? Cookies чистили? )
Та то моя проблема была.
У меня стоял рефером я.
То есть был цикл.
А вот я только не понял. по запросу
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
  • #15
Ну хорошо, что разобрались. По какому запросу не поняли?
 
Nemiroff
Участник
Сообщения
27
Реакции
0
  • #16
APTEMOH написал(а):
Ну хорошо, что разобрались. По какому запросу не поняли?
Код:
$db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, referer_id2, referer_id3, referer_id4, referer_id5, date_reg, ip)
                        VALUES ('$login','{$email}','$pass','$referer_name','$referer_name2','$referer_name3','$referer_name4','$referer_name5','$referer_id','$referer_id2','$referer_id3','$referer_id4','$referer_id5', '$time',INET_ATON('$ip'))");
$referer_name2 - 5 куда вставляется в запросе? если столбцов в запросе нет.?
 
AchtungDen
Участник
Сообщения
14
Реакции
0
  • #17

Вот такая проблема.
А вот и код:
PHP:
<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Профиль";
$user_id = $_SESSION["user_id"];
$db->Query("SELECT * FROM db_users_a, db_users_b WHERE db_users_a.id = db_users_b.id AND db_users_a.id = '$user_id'");
$prof_data = $db->FetchArray();
?>
                                <div class="cl-right">
<div class="s-bk-lf">
<div class="acc-title">Мой профиль</div>
</div>
<div class="silver-bk">
  <p>
<center>Ваша дата регистрации: <font color="#000;"><?=date("d.m.Y в H:i:s",$prof_data["date_reg"]); ?></font></center></p>

<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
   <td colspan="2"><hr></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">ID</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=$prof_data["id"]; ?></font></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">Псевдоним:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=$prof_data["user"]; ?></font></td>
  </tr>
  <tr border="1">
    <td align="left" style="padding:3px;">Email:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=$prof_data["email"]; ?></font></td>
  </tr>
  <tr>
   <td colspan="2"><hr></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">Баланс для покупок:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=sprintf("%.2f",$prof_data["money_b"]); ?> золота</font></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">Баланс на вывод:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=sprintf("%.2f",$prof_data["money_p"]); ?> золота</font></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">Доход от рефералов:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=sprintf("%.2f",$prof_data["from_referals"]); ?> золота</font></td>
  </tr>
  <tr>
   <td colspan="2"><hr></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">Пополнено:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=sprintf("%.2f",$data["insert_sum"]); ?> <?=$config->VAL; ?> </font></td>
  </tr>
    <tr>
      <td align="left" style="padding:3px;">Выведено:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=sprintf("%.2f",$prof_data["payment_sum"]); ?> <?=$config->VAL; ?> </font></td>
  </tr>
  <tr>
   <td colspan="2"><hr></td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">Вас пригласил:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=$prof_data["referer"]; ?> его ID <?=$prof_data["referer_id"]; ?></font>)</td>
  </tr>
  <tr>
    <td align="left" style="padding:3px;">У Вас рефералов:</td>
    <td align="right" style="padding:3px;"><font color="#000;"><?=$refs; ?> чел.</font></td>
  </tr>
  <tr>

</table>

                                <div class="clr"></div>  
                                </div>
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
  • #18
AchtungDen написал(а):

Вот такая проблема.
У Вас 1 уровень партнеров?

У меня просто 5-ть )


Вставьте этот код себе
Код:
 $db->Query("SELECT COUNT(*) FROM db_users_a WHERE referer_id = '$user_id'");
$refs = $db->FetchRow();
 
AriCosmo
Участник
Сообщения
515
Реакции
115
Skype
  • #19
Красавчик, бесплатно и понятно... Продолжай в том же духе.) Благодаря таким как ты, живёт форум наш! Добра тебе!):thumbsup:
 
APTEMOH
Участник
Сообщения
889
Реакции
256
Telegram
APTEMOH
  • #20
AriCosmo написал(а):
Красавчик, бесплатно и понятно... Продолжай в том же духе.) Благодаря таким как ты, живёт форум наш! Добра тебе!):thumbsup:
Сначала думал сарказм, но потом усомнился сам в себе )
Спасибо на добром слове, работаем. ;)

P.S. Так, не флудим больше! :devil:
 
Сверху