- Баллы
- 103
Привет рубаккит.
Решил выложить свою реферальную систему, может кому надо
Для её установки надо отредактировать 4 файла:
Открываем index.php и ищем строчку
И над ней пишем:
Мы отредактировали index.php, сохраняем и закрываем.
Далее открываем register.php и ищем примерно такую строчку:
Заменяем её на такую
Тут закончили и рассмотрим эту строчку
Эта строчка отвечает за подарок игроку, который пригласил нового игрока. (В моём случае ему даётся 20 рублей.)
С редактированием мы закончили, осталось добавить 1 колоночку где будут хранится реферальные иды.
Отправляем sql запрос
Основа готова, продолжим 
Теперь игрок сможет приглашать людей на проект по ссылке
http://site.ru/?ref={тут_его_ид}
Теперь сделаем вывод такой ссылки в профиле игрока и вывод всех приглашённых игроков.
Открываем profile.php и ищем такую строчку:
ниже добавляем такую:
Сохраняем, закрываем. Теперь в шаблоне профиля (userinfo.tpl) вы можете добавить реферальную ссылку http://site.ru/?ref={userid}
Так же ниже я прикреплю скрипт для вывода всех приглашённых игроков. Его так же иклюдем в userinfo.tpl
ps. Это мой первый гайд, я старался всё подробно расписать, если будут вопросы, пишите.
pss. Тестировал на DLE 9.8, на других версиях не проверял, но должно работать.
Ссылка на скрипт - RGhost
Решил выложить свою реферальную систему, может кому надо

Для её установки надо отредактировать 4 файла:
- index.php - в корне сайта
- register.php - в /engine/modules/
- profile.php - в /engine/modules/
- userinfo.tpl - в шаблонах
Открываем index.php и ищем строчку
PHP:
$tpl->load_template ( 'main.tpl' );
PHP:
if((isset($_GET['ref'])) && (!isset($_COOKIE['ref_id'])))
setcookie("ref_id",$_GET['ref'],time()+3600);
Далее открываем register.php и ищем примерно такую строчку:
PHP:
$db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $config['reg_group'] . "', '', '', '', '', '" . $_IP . "')" );
PHP:
if(isset($_COOKIE['ref_id'])){
$db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip, reffer_id) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $config['reg_group'] . "', '', '', '', '', '" . $_IP . "','".mysql_real_escape_string($_COOKIE['ref_id'])."')" );
$db->query( "UPDATE " . USERPREFIX . "_users SET money=(money + 20) WHERE user_id='".mysql_real_escape_string($_COOKIE['ref_id'])."'");
}else{
$db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $config['reg_group'] . "', '', '', '', '', '" . $_IP . "')" );
}
PHP:
$db->query( "UPDATE " . USERPREFIX . "_users SET money=(money + 20) WHERE user_id='".mysql_real_escape_string($_COOKIE['ref_id'])."'");
С редактированием мы закончили, осталось добавить 1 колоночку где будут хранится реферальные иды.
Отправляем sql запрос
Код:
ALTER TABLE `название таблицы с пользователями` ADD `reffer_id` INT( 11 ) NOT NULL DEFAULT '0'

Теперь игрок сможет приглашать людей на проект по ссылке
http://site.ru/?ref={тут_его_ид}
Теперь сделаем вывод такой ссылки в профиле игрока и вывод всех приглашённых игроков.
Открываем profile.php и ищем такую строчку:
PHP:
$tpl->set( '{usertitle}', stripslashes( $row['name'] ) );
PHP:
$tpl->set( '{userid}', stripslashes( $row['user_id'] ) );
Так же ниже я прикреплю скрипт для вывода всех приглашённых игроков. Его так же иклюдем в userinfo.tpl
Код:
{include file="путь до скритпа/reffer.php"}
pss. Тестировал на DLE 9.8, на других версиях не проверял, но должно работать.
Ссылка на скрипт - RGhost
Последнее редактирование:
