javascript определить истинного рефера

KillDead

Хранитель порядка
Регистрация
11 Авг 2006
Сообщения
894
Реакции
579
Задача вроде бы проста- мне нужно узнать с какой страницы моего сайта пришёл пользователь и выполнить js код. Но, дело в том, что если пользователь обновит страницу, или после того, как перейдёт на неё с помощью истории, нажав на кнопку "назад", то реферал стандартными способами буден определён неверно.
Возможно ли это как то обойти?
 
Если в пределах одного сайта, то записывать в куку текущый location, а потом проверять, сравнивать...
 
Если в пределах одного сайта, то записывать в куку текущый location, а потом проверять, сравнивать...
Пытался через куки сделать- но к сожалению по размеру в куку всё не влазит.
 
Пытался через куки сделать- но к сожалению по размеру в куку всё не влазит.
что это за такой урл длиннючий, который в куку не влазит:be:, еще вариант записывать в куку только определенный параметр урла, или в data-attribute, или на крайняк, если не брать в счет старые версии браузеров то можно воспользоваться локальным хранилищем -
 
  • Заблокирован
  • #6
что это за такой урл длиннючий, который в куку не влазит:be:, еще вариант записывать в куку только определенный параметр урла, или в data-attribute, или на крайняк, если не брать в счет старые версии браузеров то можно воспользоваться локальным хранилищем - Для просмотра ссылки Войди или Зарегистрируйся
А ничего, то что браузер спросит записывать данные или нет?
Врядли кто-то захочет себе в local писать непонятные js cкрипты.
 
А ничего, то что браузер спросит записывать данные или нет?
Врядли кто-то захочет себе в local писать непонятные js cкрипты.

ты это о чем, посты набиваешь?:-] Никто не предлагает писать куда-либо, каие-то непонятные зловредные скрипты, локальное хранилище - это новое поколение кук, для хранения бОльшего объема информации необходимой для внутренней работы веб-приложения, без лишних запросов к серверу. Ссылка на то и предоставлена, для ознакомления;)
 
Mr.Emm
на самом деле не всё так просто с хранилищем
во первых работает оно по разному на разных системах - незнаю в чём прикол но у меня на работе скрипт работал с хранилищем на Opera а дома нивкакую - хотя браузеры одинаковые. И даже OS ставилась с одного итогоже диска.
Во вторых IE требует подтвердить согласие на запись - многих пользователей это испугает

В итоге я отказался от этой идеи и вернулся к cookies сократив до минимума сохраняемые данные

в куках у разных браузеров можно хранить разное колличество данных но не менее 4кб - мне хватило, url более 4к символов никогда слава богу не видел такчто почему не вмещается в куку непонятно. Скорее всего KillDead туда не только url записывает а ещё кучу всего :)
 
может для данных использовать php а дальше выполнять яваскрипт
PHP:
<script language="javascript" type="text/javascript">
var referer = '<?=$_SERVER['HTTP_REFERER'] ?>';
alert (referer);
</script>
например если в ссылке реферала есть слово javascript то выполнить яваскрипт
PHP:
<?
//надо выполнить код если в ссылке реферала есть javascript
if(preg_match('#javascript#i', $_SERVER['HTTP_REFERER'])){
    $kod = 1;
}else{
    $kod = 0;
}
?>
<script language="javascript" type="text/javascript">
var kod = <?=$kod ?>;
if(kod==1){
    alert ('есть');
}
</script>
 
Назад
Сверху