| |
|
|
| | Вот простейший пример:
<?php
setcookie("visit", "visit");
echo "Вы посетили эту страницу visit ";
?>
<html>
<head>
</head>
<body>
<script>
document.cookie = 'java = java';
document.write(document.cookie);
</script>
</body>
</html>
|
Когда включаю браузер и запускаю его, то ставится только куки java, при повторе ставятся оба кука. Почему?
Может быть это особенность браузера?
А как у вас?
Хотелось бы в итоге получить надёжный код, дающий одинаковые результаты в любом случае. Вы меня понимаете! | |
| |
|
|
| |
|
|
| |
для: Eugene77
(19.05.2007 в 19:21)
| | | после setcookie вы сможете с ней оперировать только после перезагрузки страницы, так как шлется заголовок Set-Cookie
document.cookie работает напрямую с объектом печенюшек, поэтому результат виден сразу | |
| |
|
|
| |
|
|
| |
для: bronenos
(19.05.2007 в 19:29)
| | | А поторопить раскладку печенок нельзя? Уж больно кушать хочется! :))))
Может как-нибудь ob_start или что-то в этом роде помогает?
Разбивать на два файла расстановку и проверку куков - это так загромоздит код, что я запутаюсь в нём прежде чем сочиню! | |
| |
|
|
| |
|
|
| |
для: Eugene77
(19.05.2007 в 19:59)
| | | дело вот в чем
при запросе страницы браузер отправляет заголовки, в том числе с печеньками, из них формируется массив $_COOKIE
потом сервер отдает свои заголовки, в том числе с setcookie, и браузер их устанавливает
НО массив с ними уже сформирован, и новые в него просто не попадают
такие пироги | |
| |
|
|
| |
|
|
| |
для: bronenos
(19.05.2007 в 20:04)
| | | Спасибо!
Теперь понятно - пробуксовка в самой природе обмена заголовками.
Но тогда, если даже поставить JavaScript ом куки, isset их не должен обнаруживать? Правильно я понимаю? Повторный запрос заголовков невозможен? | |
| |
|
|
| |
|
|
| |
для: Eugene77
(19.05.2007 в 21:33)
| | | нет, посколько isset это php, а js их ставит уже после работы php | |
| |
|
|
| |
|
|
| |
для: Eugene77
(19.05.2007 в 21:33)
| | | JavaScript работает на клиентской машине, кукисы тоже на ней лежат.
isset выполняется на машине сервера.
PS. начните же наконец думать! Половина вопросов сразу уйдет! | |
| |
|
|
| |
|
|
| |
для: Trianon
(19.05.2007 в 23:44)
| | | Это понятно, что думать полезно, но непонятно может ли один и тот же скрипт повторно запросить заголовки с cookies, не перезапускаясь. | |
| |
|
|
| |
|
|
| |
для: Eugene77
(20.05.2007 в 05:47)
| | | не скрипт запрашивает, а клиент шлет сначала | |
| |
|
|
| |
|
|
| |
для: Eugene77
(20.05.2007 в 05:47)
| | | Вот если подумать, то окажется, что сам скрипт никаких заголовков не запрашивает. Они, при очередном запросе клиентом какого-либо контента с сервера, к нему сами прибегают. Точнее высылаются браузером, вместе с запросом контена. Любого. | |
| |
|
|
| |
|
|
| |
для: Trianon
(20.05.2007 в 11:11)
| | | Мне трудно было предположить, что cookies каждый раз высылаются браузером с запросом. Cookies ведь могут быть довольно объёмистые и если каждый раз их пересылать, то это может создать тяжёлый траффик! Буду теперь тщательней огрантчивать область видимости cookies!
Но зато теперь, благодаря вашим усилиям, у меня появилась ясная схема обмена
информацией между браузером и сервером.
Спасибо! | |
| |
|
|
| |
|
|
| |
для: Eugene77
(20.05.2007 в 12:49)
| | | Довольно объемистыми куки не делают, поскольку существует ограничение на хранимый браузером объем кукисов с одного сервера (порядка нескольких десятков кБ). Ну и потому, что хранятся они на клиентской машине, которой в общем смысле сервер никак не владеет. | |
| |
|
|