0 / 0 / 0
Регистрация: 18.11.2008
Сообщений: 104
|
|
1 | |
Как узнать, откуда пришел посетитель?02.02.2010, 15:11. Показов 3005. Ответов 10
Метки нет (Все метки)
Есть чУдные функции javascript:
document.referrer - показывает страницу, с которой пришли history.go(-1) А могу ли я из этого history.go узнать сам УРЛ, а не просто перейти назад? А еще лучше все УРлы (от history.go(-1) до history.go(-ххх))? Есть ли такие функции в vbscript?
0
|
02.02.2010, 15:11 | |
Ответы с готовыми решениями:
10
Как узнать, откуда пришел посетитель? Как узнать откуда пришел человек? Узнать подробности о клиенте - куда и откуда пришел Как определить откуда пришел юзер? |
51 / 17 / 6
Регистрация: 18.05.2007
Сообщений: 1,322
|
|
02.02.2010, 15:25 | 2 |
history Object
---------------------------------------------------------------------- Contains information about the URLs visited by the client. Remarks For security reasons, the history object does not expose the actual URLs in the browser history. It does allow navigation through the browser history by exposing the back, forward, and go methods. A particular document in the browser history can be identified as an index relative to the current page. For example, specifying -1 as a parameter for the go method is the equivalent of clicking the Back button.
0
|
0 / 0 / 0
Регистрация: 18.11.2008
Сообщений: 104
|
|
02.02.2010, 15:41 [ТС] | 3 |
Другими словами, actual URLs я не смогу узнать?
А другие пути решения проблемы есть?
0
|
51 / 17 / 6
Регистрация: 18.05.2007
Сообщений: 1,322
|
|
02.02.2010, 15:51 | 4 |
Как вариант сходу: грузи текущий локейшн во врейм (скрытый или iframe), возвращай этот фрейм назад и смотри его локейшн. Если получится расскажи.
0
|
0 / 0 / 0
Регистрация: 18.11.2008
Сообщений: 104
|
|
02.02.2010, 16:00 [ТС] | 5 |
Не понял.
0
|
0 / 0 / 0
Регистрация: 18.11.2008
Сообщений: 104
|
|
07.02.2010, 09:21 [ТС] | 6 |
Тут дело вот в чем. Пользователь приходит на мой сервер по ссылке (чаще с Яндекса), некоторое время ходит по ссылкам внутри сайта, и в конце-концов запрашивает (во всяком случае, этого хотелось бы) дополнительную инфу. И мне хотелось бы знать первую ссылку, с которой он пришел, причем желательно с параметрами, то есть ключевым словом, по которому он меня нашел. Можно с помощью document.referrer записать ссылку куда-нибудь в Кукис, а в нужный момент вытащить оттудова, или таскать за собой в скрытой форме по всем страницам, но это не слишком красивые способы - зачем лишний траффик молотить?
pl, не понял твоей мысли насчет фреймов?
0
|
0 / 0 / 0
Регистрация: 22.01.2009
Сообщений: 28
|
|
07.02.2010, 10:20 | 7 |
Скачай мою систему (www.qtracker.ru) и посмотри, как можно реализовать.
Как вариант, можешь взять Request.ServerVariables('HTTP_REFERER') сравнить кому пренадлежит ссылка, твоему сайту или чужому, если принадлежит интересуещему тебя серваку, то выдрать поисковые слова, перекодировать в нормальный вид и сохранить в базе, а пользователю выдать куку без времени жизни, что бы при следуещем его заходе ты мог опять посмотреть, откуда он пришел. Правда там еще несколько условий нужно учитывать, в общем, все зависит от того, что именно ты навернуть хочешь
0
|
85 / 61 / 69
Регистрация: 15.03.2007
Сообщений: 6,906
|
|
07.02.2010, 10:55 | 8 |
Что мешает сохранить это строку в переменную сессии?
0
|
0 / 0 / 0
Регистрация: 22.01.2009
Сообщений: 28
|
|
07.02.2010, 11:30 | 9 |
Да без разницы, только не строку, а ID
0
|
0 / 0 / 0
Регистрация: 18.11.2008
Сообщений: 104
|
|
07.02.2010, 15:05 [ТС] | 10 |
В принципе, меня устроит и вариант, когда я сразу записываю refferer в базу... Наверно, и стоит этим ограничиться, еслинельзя уж history.go посмотреть...
Кстати, а как мне яндексовские параметры в удобочитаемый вид преобразовать?
0
|
0 / 0 / 0
Регистрация: 22.01.2009
Сообщений: 28
|
|
08.02.2010, 10:42 | 11 |
Посмотри в сорсах моей системы, там реализовано примерно так:
sReferer = Request.ServerVariables('HTTP_REFERER') FUNCTION GetDecodeSearchText(sName) ChrWord = 'АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЫЬЭЪЮЯабвгдеёжзийклмнопрстуфхцчшщыьэъюяABCDEFGHIJKLM NOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' ChrSymbol = ' !''#$%&'()*+,-./0123456789:;<=>?@[]^_`{|}~‰S‹‘’“”•–—™¦§©¬®°±µ¶№' WordArrayUtf1 = Array('%d0%90','%d0%91','%d0%92','%d0%93','%d0%94','%d0%95','%d0%81','%d0%96','% d0%97','%d0%98','%d0%99','%d0%9a','%d0%9b','%d0%9c','%d0%9d','%d0%9e','%d0%9f',' %d0%a0','%d0%a1','%d0%a2','%d0%a3','%d0%a4','%d0%a5','%d0%a6','%d0%a7','%d0%a8', '%d0%a9','%d0%ab','%d0%ac','%d0%ad','%d0%aa','%d0%ae','%d0%af','%d0%b0','%d0%b1' ,'%d0%b2','%d0%b3','%d0%b4','%d0%b5','%d1%91','%d0%b6','%d0%b7','%d0%b8','%d0%b9 ','%d0%ba','%d0%bb','%d0%bc','%d0%bd','%d0%be','%d0%bf','%d1%80','%d1%81','%d1%8 2','%d1%83','%d1%84','%d1%85','%d1%86','%d1%87','%d1%88','%d1%89','%d1%8b','%d1% 8c','%d1%8d','%d1%8a','%d1%8e','%d1%8f') WordArrayUtf2 = Array('%D0%90','%D0%91','%D0%92','%D0%93','%D0%94','%D0%95','%D0%81','%D0%96','% D0%97','%D0%98','%D0%99','%D0%9A','%D0%9B','%D0%9C','%D0%9D','%D0%9E','%D0%9F',' %D0%A0','%D0%A1','%D0%A2','%D0%A3','%D0%A4','%D0%A5','%D0%A6','%D0%A7','%D0%A8', '%D0%A9','%D0%AB','%D0%AC','%D0%AD','%D0%AA','%D0%AE','%D0%AF','%D0%B0','%D0%B1' ,'%D0%B2','%D0%B3','%D0%B4','%D0%B5','%D1%91','%D0%B6','%D0%B7','%D0%B8','%D0%B9 ','%D0%BA','%D0%BB','%D0%BC','%D0%BD','%D0%BE','%D0%BF','%D1%80','%D1%81','%D1%8 2','%D1%83','%D1%84','%D1%85','%D1%86','%D1%87','%D1%88','%D1%89','%D1%8B','%D1% 8C','%D1%8D','%D1%8A','%D1%8E','%D1%8F') WordArrayWin1 = Array('%c0','%c1','%c2','%c3','%c4','%c5','%a8','%c6','%c7','%c8','%c9','%ca','% cb','%cc','%cd','%ce','%cf','%d0','%d1','%d2','%d3','%d4','%d5','%d6','%d7','%d8 ','%d9','%db','%dc','%dd','%da','%de','%df','%e0','%e1','%e2','%e3','%e4','%e5', '%b8','%e6','%e7','%e8','%e9','%ea','%eb','%ec','%ed','%ee','%e 5','%26','%27','%28','%29','%2A','%2B','%2C','%2D','%2E','%2F','%30','%31','%32' ,'%33','%34','%35','%36','%37','%38','%39','%3A','%3B','%3C','%3D','%3E','%3F',' %40','%5B','%5C','%5D','%5E','%5F','%60','%7B','%7C','%7D','%7E','%89','%8A','%8 B','%91','%92','%93','%94','%95','%96','%97','%99','%A6','%A7','%A9','%AC','%AE' ,'%B0','%B1','%B5','%B6','%B91') FOR i = 0 TO 65 sName = Replace(sName,WordArrayUtf1(i),Mid(ChrWord,i+1,1)) sName = Replace(sName,WordArrayUtf2(i),Mid(ChrWord,i+1,1)) NEXT FOR i = 0 TO 117 sName = Replace(sName,WordArrayWin1(i),Mid(ChrWord,i+1,1)) sName = Replace(sName,WordArrayWin2(i),Mid(ChrWord,i+1,1)) NEXT FOR i = 0 TO 63 sName = Replace(sName,SymbolArray1(i),Mid(ChrSymbol,i+1,1)) sName = Replace(sName,SymbolArray2(i),Mid(ChrSymbol,i+1,1)) NEXT GetDecodeSearchText = sName END FUNCTION FUNCTION GetDecodeSearchTextY(sName) ChrWord = 'АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЫЬЭЪЮЯабвгдеёжзийклмнопрстуфхцчшщыьэъюя' ChrSymbol = ' !''#$%&'()*+,-./0123456789:;<=>?@[]^_`{|}~‰S‹‘’“”•–—™¦§©¬®°±µ¶' WordArrayKoi1 = Array('%25e1','%25e2','%25f7','%25e7','%25e4','%25e5','%25b3','%25f6','%25fa','% 25e9','%25ea','%25eb','%25ec','%25ed','%25ee','%25ef','%25f0','%25f2','%25f3','% 25f4','%25f5','%25e6','%25e8','%25e3','%25fe','%25fb','%25fd','%25f9','%25f8','% 25fc','%25ff','%25e0','%25f1','%25c1','%25c2','%25d7','%25c7','%25c4','%25c5','% 25a3','%25d6','%25da','%25c9','%25ca','%25cb','%25cc','%25cd','%25ce','%25cf','% 25d0','%25d2','%25d3','%25d4','%25d5','%25c6','%25c8','%25c3','%25de','%25db','% 25dd','%25d9','%25d8','%25dc','%25df','%25c0','%25d1') WordArrayKoi2 = Array('%25E1','%25E2','%25F7','%25E7','%25E4','%25E5','%25B3','%25F6','%25FA','% 25E9','%25EA','%25EB','%25EC','%25ED','%25EE','%25EF','%25F0','%25F2','%25F3','% 25F4','%25F5','%25E6','%25E8','%25E3','%25FE','%25FB','%25FD','%25F9','%25F8','% 25FC','%25FF','%25E0','%25F1','%25C1','%25C2','%25D7','%25C7','%25C4','%25C5','% 25A3','%25D6','%25DA','%25C9','%25CA','%25CB','%25CC','%25CD','%25CE','%25CF','% 25D0','%25D2','%25D3','%25D4','%25D5','%25C6','%25C8','%25C3',&q SearchMachine = 'Google' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, 'yahoo.') THEN IF InStr(sReferer, 'p=') THEN sSearchMachine = 'Yahoo!' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'p=','&')) END IF ELSEIF InStr(sReferer, 'aol.') THEN IF InStr(sReferer, 'query=') THEN sSearchMachine = 'AOL' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'query=','&')) END IF ELSEIF InStr(sReferer, 'altavista.') THEN IF InStr(sReferer, 'q=') THEN sSearchMachine = 'AltaVista' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, 'msn.') THEN IF InStr(sReferer, 'q=') THEN sSearchMachine = 'MSN' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, 'lycos.') THEN IF InStr(sReferer, 'query=') THEN sSearchMachine = 'Lycos' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'query=','&')) END IF ELSEIF InStr(sReferer, 'punto.') THEN IF InStr(sReferer, 'text=') THEN sSearchMachine = 'Punto' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'text=','&')) END IF ELSEIF InStr(sReferer, 'alltheweb.') THEN IF InStr(sReferer, 'q=') THEN sSearchMachine = 'AllTheWeb' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, 'meta-ukraine.') THEN IF InStr(sReferer, 'q=') THEN sSearchMachine = 'МЕТА-Украина' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, 'passagen.') THEN IF InStr(sReferer, 'q=') THEN sSearchMachine = 'Passagen' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, 'bzz.') THEN IF InStr(sReferer, 'kwd=') THEN sSearchMachine = 'BzZ' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'kwd=','&')) END IF ELSEIF InStr(sReferer, 'mail.') THEN IF InStr(sReferer, 'words=') THEN sSearchMachine = 'Поиск@Mail.ru' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'words=','&')) END IF ELSEIF InStr(sReferer, 'metabot.') THEN IF InStr(sReferer, 'st=') THEN sSearchMachine = 'MetaBot' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'st=','&')) END IF ELSEIF InStr(sReferer, 'netscape.') THEN IF InStr(sReferer, 'query=') THEN sSearchMachine = 'Netscape Search' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'query=','&')) END IF ELSEIF InStr(sReferer, 'hotbot.') THEN IF InStr(sReferer, 'query=') THEN sSearchMachine = 'HotBot' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'query=','&')) END IF ELSEIF InStr(sReferer, 'teoma.') THEN IF InStr(sReferer, 'q=') THEN sSearchMachine = 'Teoma' sSearchText = GetDecodeSearchText(CutSearchText(sReferer,'q=','&')) END IF ELSEIF InStr(sReferer, '
0
|
08.02.2010, 10:42 | |
08.02.2010, 10:42 | |
Помогаю со студенческими работами здесь
11
Как узнать что посетитель ушел ? Как узнать город, в котором находится посетитель сайта по IP? нужно что бы файлы сайта были доступны только если посетитель пришел с конкретного сайта по ссылке. Как узнать с какого IP пришел юзер? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |