bobur.exe
Создатель
- Регистрация
- 3 Май 2009
- Сообщения
- 16
- Реакции
- 9
- Автор темы
- #1
После долгих мучений с "кукисами" сменил организацию данного хака.
Раньше всё зависело только от того насколько хорошо браузер "поймёт" Время Действия cookies.
Мною было замечено, что Опера корректно берёт эти данные и удаляет cookies вовремя, а Фаерфокс не всегда воспринимает их, и часто пишет, что Срок действия истекает в конце сессии.
Переделал систему по которой браузер принимал срок действия.
Теперь cookies нужен всего лишь для временного хранения данных, тоесть php сохраняет время в юникс формате, время последнего просмотра pop-upa.
Ничего сложного:
Установка:
в index.php найти
ниже вставить:
Здесь готовый шаблон для одного pop-upa, плюс закомментированный для второго.
Проверял на Opera 9.63 и FireFox 3.0 (к сожалению ie не захотел работать)
!Интересно!: я заметил что Опере берёт Юникс время с самого Серва, а Фаер с компа.
Так что большие числа не ставьте, часовые пояса ну и всё такое.
Огромнейшее спасибо Liser_25 за то что дал хорошую идею
Раньше всё зависело только от того насколько хорошо браузер "поймёт" Время Действия cookies.
Мною было замечено, что Опера корректно берёт эти данные и удаляет cookies вовремя, а Фаерфокс не всегда воспринимает их, и часто пишет, что Срок действия истекает в конце сессии.
Переделал систему по которой браузер принимал срок действия.
Теперь cookies нужен всего лишь для временного хранения данных, тоесть php сохраняет время в юникс формате, время последнего просмотра pop-upa.
Ничего сложного:
Установка:
в index.php найти
$tpl->load_template('main.tpl');
ниже вставить:
// время серва
$timeserva = time();
// Через сколько секунд снова показывать?
$cekpokaz = 1800;
// код скриптов/баннеров
$popup1= <<<HERE
вставить свой код
HERE;
/*
$popup2= <<<HERE
код 2-го баннера
HERE;
*/
// проверка на существование переменной popup_showed
if(isset($_COOKIE['popup_showed_time'])){
if ($timeserva > $_COOKIE['popup_showed_time']+$cekpokaz){
// создаём cookies c Именем: popup_showed_time, Содержимое: время серва и тд
setcookie ("popup_showed_time", $timeserva, time()+ $cekpokaz, "/");
$tpl->set('{popup1}', $popup1);
// $tpl->set('{popup2}', $popup2);
}
else {
$tpl->set('{popup1}', "");
//$tpl->set('{popup2}', "");
}
} else {
// создаём cookies c Именем: popup_showed_time, Содержимое: время серва и тд
setcookie("popup_showed_time", $timeserva, time()+ $cekpokaz, "/");
$tpl->set('{popup1}', $popup1);
//$tpl->set('{popup2}', $popup2);
}
Здесь готовый шаблон для одного pop-upa, плюс закомментированный для второго.
Проверял на Opera 9.63 и FireFox 3.0 (к сожалению ie не захотел работать)
!Интересно!: я заметил что Опере берёт Юникс время с самого Серва, а Фаер с компа.
Так что большие числа не ставьте, часовые пояса ну и всё такое.
Огромнейшее спасибо Liser_25 за то что дал хорошую идею