Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не создаются cookie
 
 автор: kaoz   (15.08.2005 в 03:16)   письмо автору
 
 

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

в книге написано что для того чтобы оставить кукиз нужно воспользоваться setcookie(). на одной странице я пользуюсь этой функцией:


setcookie(test,$test)


, а на другой (никак не связанной с предыдущей) мне нужно узнать есть ли кукиз или нет. как я понял нужно просто написать:


if ($test == test) ....


все ли я правильно делаю??

   
 
 автор: cheops   (15.08.2005 в 03:43)   письмо автору
 
   для: kaoz   (15.08.2005 в 03:16)
 

Да только имя cookie следует заключить в кавычки, не плохо также выставить время жизни - в этом случае cookie сохраняется на диск и можно проконтролировать визуально - создаётся она или нет
<?php
  setcookie
('test',$testtime()+ 3600);
?>

и
<?php
if ($test == 'test') ....
?>

   
 
 автор: isset   (15.08.2005 в 03:53)   письмо автору
 
   для: cheops   (15.08.2005 в 03:43)
 

И лучше обращаться к кукам через суперглобальный массив $_COOKIE:

<?php
if ($_COOKIE['test'] == 'test') ....
?>

   
 
 автор: kaoz   (15.08.2005 в 03:59)   письмо автору
 
   для: isset   (15.08.2005 в 03:53)
 

ок... пасиб за советы =)

у меня еще вопрос. что лучше сессии или кукизы?
если я правильно понял сессия закрывается после окончания работы с сайтом..
т.е. через день скрипт не определит что человек заходил вчера.
так оно или нет?

   
 
 автор: Ziq   (15.08.2005 в 07:02)   письмо автору
 
   для: kaoz   (15.08.2005 в 03:59)
 

> что лучше сессии или кукизы?
Все зависит от конкретной задачи. Разница между ними только в том, что сессии храняться на сервере а Cookie на локальной машине. Так как сессии храняться на сервере, то имеют лучшую защиту.
> если я правильно понял сессия закрывается после окончания работы с сайтом..
Это не совсем так, дело в том, что сессии храняться в зависимости от настроек сервера. Очбычно это 15 минут.

   
 
 автор: kaoz   (15.08.2005 в 07:33)   письмо автору
 
   для: Ziq   (15.08.2005 в 07:02)
 

> Обычно это 15 минут.
а можно это с помощью .htaccess выставить??

   
 
 автор: cheops   (15.08.2005 в 12:21)   письмо автору
 
   для: Ziq   (15.08.2005 в 07:02)
 

Их как бы сравнивать не совсем корректно так как они взаимодополняют друг друга, на самом деле оба механизма предназначены для сохранения состояния, которое не обеспечивает HTTP. Кукисы храняться на машине посетителя и время их хранения определяет разработчик (ну и посетитель, который их может уничтожить), а сессии хранятся на сервере и время их жизни (обычно не большое) определяет администратор сервера.
Кукисы обычно применяют для долгосрочных задач (от нескольких часов) и хранения информации, которая относится всецело к конкретному посетителю (личные настройки, логины, пароли и т.п.), а сессии предназначены для краткосрочных задач (до нескольких часов) и хранения и обработки информации обо всех посетителях в целом (число посетителей on-line и т.п.). Поэтому использовать тот или иной механизм следует в зависимости от задачи.

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=773
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=522

   
 
 автор: XPraptor   (15.08.2005 в 13:49)   письмо автору
 
   для: cheops   (15.08.2005 в 12:21)
 

Немного добавлю к высказыванию cheops-а. Сессии хранятся не сколько админу вздумается, а сколько программеру вздумается. При старте сессии, нужно послать команду session_set_cookie_params в которой указать сколько жить сессионым переменным в кукисах, если установить 0 то до закрытия всех окон браузера.
Потому, как сессия сначала проверяется в кукисах пользователя, а потом уже в хандлере.
А вот если кукисы отключены, тогда действуют хэндлы и значение установленное админом по умолчанию.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования