[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите написать или понять как написать GET пара
Lvitsa
Сразу скажу, что я новичок ph34r.gif
В общем мне необходимо каждому зарегистрированному пользователю моего сайта предоставить реферальную ссылку вида (любая стр сайта/?ref=$login)
И чтобы при переходе по данной ссылке данные сохранялись в куках на год например (т.е. даже если пользователь зайдет в течении этого времени не по реф ссылке то он все равно станет рефералом данного логина)

PS: мне НЕ нужна какая то глобальная реф система, там типа продажи и выплаты комиссий и тп. Эти реф ссылки нужны для узкого круга.

Просьба помочь с написанием данной функции, т.к. я подозреваю, что она достаточно простая, но вот у меня в голове пазлы вообще не складываются huh.gif

PS2: Может по поводу простоты это мои иллюзии? unsure.gif

это все что я смогла из себя выжать: sad.gif
function getRef($login) {
$mysqli = connectDB();
????
closeDB($mysqli);
}
Valick
Цитата (Lvitsa @ 11.04.2016 - 22:43)
Сразу скажу, что я новичок

это стандартная фраза человека в поисках халявы


_____________
Стимулятор ~yoomoney - 41001303250491
Ron
Зачем на каждую страницу? Это плохо, придется вешать обработчик на точке входа. Или вообще на каждую страницу, если единой точки входа нет.

Давай ссылку на какую-то определенную страницу, например на регистрацию или на ту, где максимально доходчиво понятно что из себя представляет сайт и зачем на нем регистрироваться.

И всё, потом при регистрации проверяешь существование указнного логина ну и делаешь какие-то манипуляции, ради которых создавалась реферальная система.

Я бы так сделал, например.

Миша
if(!empty($_COOKIE['ref'])) {
// данные имеются в COOKIE
// сохранить в переменную

} elseif(!empty($_GET['ref'])) {
// проверяем переход по ссылке, ставим печеньки
// сохранить в переменную

}


_____________
Принимаю заказы, писать в ЛС
Lvitsa
Цитата
Зачем на каждую страницу? Это плохо, придется вешать обработчик на точке входа. Или вообще на каждую страницу, если единой точки входа нет.

Давай ссулку на какую-то определенную страницу, например на регистрацию или на ту, где максимально доходчиво понятно что из себя представляет сайт и зачем на нем регистрироваться.

И всё, потом при регистрации проверяешь существование указнного логина ну и делаешь какие-то манипцляции, ради которых создавалась реферальная система.

Я бы так сделал, например.


Ну в общем не обязательно конечно любая стр, можно и на одну, я не могу понять как вообще эту ссылку генирировать unsure.gif
Ron
Цитата (Lvitsa @ 12.04.2016 - 00:11)
Ну в общем не обязательно конечно любая стр, можно и на одну, я не могу понять как вообще эту ссылку генирировать unsure.gif

Да хоть тем же хардкодом. У тебя же есть информация в шаблоне, где отображается логин пользователя? Ну вот там рядышком, а лучше на странице настроек аккаунта. Только я бы взял не имя пользователя а его ID. Работать проще потом.
Lvitsa
Цитата
Да хоть тем же хардкодом. У тебя же есть информация в шаблоне, где отображается логин пользователя? Ну вот там рядышком, а лучше на странице настроек аккаунта. Только я бы взял не имя пользователя а его ID. Работать проще потом.


Я могу конечно как то не правильно понимать
где ее разместить в лк то я понимаю (по поводу id, логин у меня также уникален)

вот например я показала пользователю ссылку, но вот как ее сделать активной к действию
function getRefLinkFromTable($login) {
$mysqli = connectDB();
$result_set = $mysqli->query("SELECT `ref` FROM `users` WHERE `login` = '$login'");
$row = $result_set->fetch_assoc();
$result_set->close();
closeDB($mysqli);
return $row['ref'];
}
function getRefLink($login) {
$link = "mysite.local/reg?ref=";
return ($link.$login);
}
Lvitsa
Цитата
if(!empty($_COOKIE['ref'])) {
// данные имеются в COOKIE
// сохранить в переменную
} elseif(!empty($_GET['ref'])) {
// проверяем переход по ссылке, ставим печеньки
// сохранить в переменную
}

if(!empty($_COOKIE['ref'])) {
// данные имеются в COOKIE - это берется логин пригласившего из cookie приглашенного по ссылке?
// сохранить в переменную - это имеется ввиду заполнить поле логином пригласившего?
}
если у меня реф без бонусов то эта часть не нужна?
elseif(!empty($_GET['ref'])) {
// проверяем переход по ссылке, ставим печеньки
// сохранить в переменную
}

Если то что выше я правильно поняла, то как мне приглашенному занести в куки логин пригласившего? wacko.gif

PS: не ругайте сильно я первый раз на форум обращаюсь и могу не понять сленга опытных
Ron
Цитата (Lvitsa @ 12.04.2016 - 02:20)
Если то что выше я правильно поняла, то как мне приглашенному занести в куки логин пригласившего?

Ну как... Через setcookie. =)
http://php.net/manual/ru/function.setcookie.php

Только не нужно каждый раз проверять есть ли кука. Просто перевыставлять по прилетевшему параметру и всё, если он имеется. Выставили, сделали redirect например на ту же страницу, только без параметров и всё.

Дальше когда уже пользователь (приглашенный) хочет зарегистрироваться, именно в этот момент проверять кто его пригласил. Лучше только, опять же, не логин в куку сохранять, а ID. Потом валидировать правильнее по Primary key, для выборки лучше. Чем строковое поле искать. Во-вторых совсем не обязательно светить в параметре логин пригласившего, нафиг он там нужен.

И снова валидировать проще, просто привести к типу int. Посмотреть 0 не 0. Если 0, то значит подсунули какую-то бяку. Если нормальное число, то дополнительно отвалидировать через БД. Ну там варианты, надо по ситуации кумекать.



Lvitsa
Цитата
Ну как... Через setcookie. =)
http://php.net/manual/ru/function.setcookie.php


Спасибо, почитала, теперь мозг у меня уже взрывается wacko.gif

Я нашла готовый скрипт реф системы, там в прицепе нашла этот момент, но там куча лишнего (с чем еще не связывалась).

В общем хотела спросить сколько может стоить то что мне нужно (хоть примерно) и где можно найти исполнителя?

На моем сайте самостоятельно пользователь зарегистрироваться не может (каждого я регистрирую лично).

Мне нужно:
1 - что бы у каждого зарегистрированного пользователя была реф ссылка.
2 - данная реф ссылка нужна не для регистрации, а для заполнения анкет.
3 - например пользователь пришел по реф ссылке и заполнил анкету, то данная анкета должна отправится в личный кабинет пользователя данной реф ссылки.
4 - и что бы даже если пользователь зразу не заполнил анкету, то в течении например года (эта анкета отправлялась тому от кого он пришел).
5 - если пользователь сам пришел на сайт и заполнил анкету, то эти анкеты должны приходить в мой лк.

PS: может я вообще не в том направлении двигаюсь? unsure.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.