evercookie, как юзать?

Статус
В этой теме нельзя размещать новые ответы.

Дмитрий Кесаев

aka Zlobniy Babko
Заблокирован
Регистрация
10 Май 2007
Сообщения
1.332
Реакции
1.235
  • Автор темы
  • Заблокирован
  • #1
Всем д/день!
Возник вопрос с evercookie.
установил скриптик

PHP:
<script type="text/javascript" src="/1/evercookie.js"></script>
<script type="text/javascript" src="/1/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/1/swfobject-2.2.min.js"></script>

<script> var ec = new evercookie();    var val = "SESS0036";  ec.set("id", val);  setTimeout(getC, 500, 1);  function getC(dont) {  ec.get("id", function(best, all) {  document.getElementById('idtag').innerHTML = best;  var txt = document.getElementById('cookies');  for (var item in all)  txt.innerHTML += item + ' mechanism: ' + (val == all[item] ? '<b>' + all[item] + '</b>' : all[item]) + '<br>';  }, dont); }  </script>

Вызываю его через Для просмотра ссылки Войди или Зарегистрируйся
кука с значением SESS0036 - прописывается повсюду...

Как только перехожу на главную Для просмотра ссылки Войди или Зарегистрируйся и чищу в браузере все кукисы и затем через F5 - ничего не происходит... Еврикука не перезаписывается в браузере...

Как быть с этой неубиваемой кукой?
Или можно вызвать из другого места?

Если да - помогите составить PHP условие на проверку этой куки.
Типа
PHP:
<?php
if(isset($_COOKIES['SESS0036'])){
echo "есть кука";
}else{
echo "нет куки";
}
?>


СПС!
 
Вот с хабра инфа
Удалить это куки практически невозможно! (Все возможно, конечно, но слишком много мороки)

Куки хранятся в:
  • HTTP Cookies;
  • Local Shared Objects (Flash);
  • Сохранение куки в значениях RGB автосгенерированных и форсированно кэшированных PNG с использованием HTML5 canvas;
  • Сохранение куки в Web History;
  • HTML5 Session Storage;
  • HTML5 Local Storage;
  • HTML5 Global Storage;
  • HTML5 Database Storage через SQLite.

При удалении из одного из этих мест кука автоматически восстанавливается из оставшихся. Работает даже если пользователь сменит браузер (через Local Shared Objects из Flash).

Я так понимаю есть плагины для firefox'a которые куку эту удалят.
 
Последнее редактирование:
  • Автор темы
  • Заблокирован
  • #3
Хабру читал...
Да не в тему написал ты :D... Мне не нужно удалять куку.
Мне нужно, чтоб кука эта была, пофиг где на компе юзера - необходимо условие.

Т.е. если кука не восстанавливает себя в браузере, так она д/быть в других местах прописана.
А вот место локации ее как на php написать?

Нужно условие!
 
Хабру читал...
Да не в тему написал ты :D... Мне не нужно удалять куку.
Мне нужно, чтоб кука эта была, пофиг где на компе юзера - необходимо условие.

Т.е. если кука не восстанавливает себя в браузере, так она д/быть в других местах прописана.
А вот место локации ее как на php написать?

Нужно условие!

Как-то так наверное

Где будет написано undefined там нет куки
В var val = нужно куку передать

Код:
<html>
<head>
<title>Evercookie - unforgettable cookies</title>
<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="swfobject-2.2.min.js"></script>
<script type="text/javascript" src="evercookie.js"></script>
</head>

<body>
<pre>
<script>
var val = "573";
var ec = new evercookie();
getC(1);
//setTimeout(getC, 500, 1);
function getC(dont)
{
    ec.get("uid", function(best, all) {
        document.getElementById('idtag').innerHTML = best;
        var txt = document.getElementById('cookies');
        for (var item in all)
            txt.innerHTML += item + ' mechanism: ' + (val == all[item] ? '<b>' + all[item] + '</b>' : all[item]) + '<br>';
    }, dont);
}
</script>
    <b>Cookie found:</b> <i>uid</i> = <span id='idtag'>currently not set</span>
    <div id='cookies'></div>

</PRE>

</body>
</html>

Не проверял сам, но пишут что еврикуки в приватном режиме браузера бессильны
 
Последнее редактирование:
  • Автор темы
  • Заблокирован
  • #5
Да я по такому же принципу прописываю ее
var val = "SESS0036";
ec.set("id", val);

Проверка по условию проходит

<?php
if ($_COOKIE['id']) {
echo "есть кука";
}else{
echo "нет куки";
}
?>

Если почистить куку в браузере - скрипт уже не выполняется - НЕТ просто куки!

Вот я и спрашиваю как составить условие, чтоб эта кука (спрятанная в др. месте) вызывалась скриптом или

Другой вопрос... как сделать самовосстанавливающуюся куку в браузере?
 
Да я по такому же принципу прописываю ее
var val = "SESS0036";
ec.set("id", val);

Проверка по условию проходит

<?php
if ($_COOKIE['id']) {
echo "есть кука";
}else{
echo "нет куки";
}
?>

Если почистить куку в браузере - скрипт уже не выполняется - НЕТ просто куки!

Вот я и спрашиваю как составить условие, чтоб эта кука (спрятанная в др. месте) вызывалась скриптом или

Другой вопрос... как сделать самовосстанавливающуюся куку в браузере?
Куки нет по причине того что php обрабатывается ДО работы Javascript, а только он куку восстанавливает.
Решение. Попробуйте через промежуточный редирект.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху