Автор Тема: Определиние откуда пришел пользователь  (Прочитано 5177 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tomashik

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Имееться партнерская программа. нужно, что бы дилер давал у себя ссылку типа: http://www.myservak.ru/diller.php?ivanov, так вот как это все сделать? Т.е. сам файл diller.php должен пересылать на корневую станичку моего сервера, но при это я должен видеть, что юзверь пришел именно от этого дилера. И скрипт должен записывать куда - то это.

Оффлайн SmIlE

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 7
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Определиние откуда пришел пользователь
« Ответ #1 : 29 Марта 2003, 17:58:21 »
Надо сделать так ! http://www.myservak.ru/diller.php?diller=(id диллера) потом :
if ($diller == "")
{
/* здесь действия которые должны происходить если пользователь пришёл не от диллера */
}
if ($diller < 0){
echo "Hm ... Hacker ?";
exit();
}
if ($diller >= 0){
/* здесь действия которые должны происходить если пользователь пришёл от диллера */
}
?>

Оффлайн SmIlE

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 7
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Определиние откуда пришел пользователь
« Ответ #2 : 29 Марта 2003, 18:00:08 »
Тоесть ссылка такого вида :
http://www.myservak.ru/diller.php?diller=0

Оффлайн nagash

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 341
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.nagash.org
Определиние откуда пришел пользователь
« Ответ #3 : 30 Марта 2003, 01:26:06 »
ну есть такая полезная переменная $HTTP_REFERER

Оффлайн Tronyx

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 826
  • +0/-0
  • 2
    • Просмотр профиля
Определиние откуда пришел пользователь
« Ответ #4 : 30 Марта 2003, 10:44:09 »
Цитировать
я должен видеть, что юзверь пришел именно от этого дилера.

Ты что думаешь, что дилер Иванов поставит у себя на сайте ссылку от имени дилера Петрова, вместо своей ссылки? Он же тогда нечего не получит!

Цитировать
Тоесть ссылка такого вида :
Хочешь такую, хочешь такую как сам предложил - неважно. Главное чтобы этот идентификатор был уникальным.
С уважением, Владимир Гончаренко - COPI# 93
Ролевая онлайн игра

Оффлайн tomashik

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Определиние откуда пришел пользователь
« Ответ #5 : 30 Марта 2003, 11:30:37 »
Но как мне определить какой у чела дилер? Оставлять куки у пользователя? А ведь кук всего 300 максимум. Он за 10 дней их обновит всех. А мне нужно на полгода...

Оффлайн tomashik

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Определиние откуда пришел пользователь
« Ответ #6 : 30 Марта 2003, 14:16:30 »
Smile:
http://www.myservak.ru/diller.php?diller=www.mydiller.ru.
Эта ссылка не работает. Я на странице diller.php пишу строку
echo $diller;
?>
т.е.  по идее он должен показать в браузере http://www.mydiller.ru. Но он пишет: "$diller".

Далее:
Мне не нужно определять меньше нуля, т.е. хацкер или нет. мне нужно что бы дилер давал у себя ссылку:
http://www.myservak.ru/diller.php?diller=www.adress_dillera.ru.

И потом я должен этот адрес кидать пользователю в куку.

И потом я должен считать с кук. Но как это сделать?  Я читал статью на websript.ru, но так и не разобрался.

Оффлайн Tronyx

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 826
  • +0/-0
  • 2
    • Просмотр профиля
Определиние откуда пришел пользователь
« Ответ #7 : 30 Марта 2003, 17:13:11 »
томашик ты бы сразу сказал, что ПХП ты совершенно не знаешь - купи книгу.

Цитировать
Я на странице diller.php пишу строку

<?
echo 
$_GET[\'diller\'];
?>


Цитировать
Оставлять куки у пользователя?

Да.

Цитировать
И потом я должен этот адрес кидать пользователю в куку.
setcookie("diller", $_GET[\'diller\'], time()+60*60*24*180); - кука на 180 дней.

Цитировать
Но как это сделать?

echo $_COOKIE[\'diller\'];
?>
С уважением, Владимир Гончаренко - COPI# 93
Ролевая онлайн игра

Оффлайн tomashik

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Определиние откуда пришел пользователь
« Ответ #8 : 31 Марта 2003, 20:37:31 »
Книгу просто некогда изучать! Будет лето буду изучать PHP. А мне он нужен сейчас, тем более я думал только форма заказа будет, а тут еще и дилеров...
И еще вопрос:
time()+60*60*24*180);
если здесь вместо 180 поставить 360 то кука будет на год?
И что тогда значит "+60*60*24*"?

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Определиние откуда пришел пользователь
« Ответ #9 : 31 Марта 2003, 21:24:05 »
time() возвращает количество секунд, которое прошло с полуночи первого января 1970 года... короче тебе это нафиг не надо :).
Смысл в том, что к сегодняшнему времени прибавляют 60 (секунд в минуте), умноженные на 60 (минут в часе), умноженные на 24 (часов в дне) и на нужное количество дней, хоть 180, хоть 360...
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн tomashik

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Определиние откуда пришел пользователь
« Ответ #10 : 01 Апреля 2003, 20:02:34 »
ОК.
А как мне вести статистику сколько человек зашло от каждого из дилеров. Ну и всех вместе тоже :)

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Определиние откуда пришел пользователь
« Ответ #11 : 01 Апреля 2003, 22:31:23 »
Создай файл или базу данных с дилерами и повесь у каждого счетчик. Сколько всех вместе - сложи счетчики всех дилеров.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28