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

Форум PHP

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

 

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

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

тема: COOKIES глючат! Помогите!
 
 автор: AlMag   (30.08.2006 в 15:25)   письмо автору
 
 

Вот пример нерабочего скрипта:


<?php
  
If (empty($_COOKIE["a"])) $a=0; else $a=$_COOKIE["a"];
  
$a++;
  
setcookie("a",$a,mktime(0,0,0,1,1,2010));
 echo(
$a);
?>


Он выдаёт числа, но иногда пропускает некоторые. Один раз пропустил 3,
другой - 2, третий - 11.

Что не так? Спасибо.

   
 
 автор: RV   (30.08.2006 в 15:32)   письмо автору
 
   для: AlMag   (30.08.2006 в 15:25)
 

после установки кук надо перезагрузить страницу.

   
 
 автор: AlMag   (30.08.2006 в 16:33)   письмо автору
 
   для: RV   (30.08.2006 в 15:32)
 

Тоесть...

   
 
 автор: cheops   (30.08.2006 в 20:15)   письмо автору
 
   для: AlMag   (30.08.2006 в 16:33)
 

Это означает, что сразу после вызова функции setcookie() массив $_CCOOKIE не заполняется, данные сначала идут в HTTP-заголовках на машину клиента, затем с HTTP-заголовками на сервер и на сервере устанавливаются в массив $_COOKIE, т.е. для того, чтобы в $_COOKIE что-то появилось, страницу следует перезагрузить либо в ручную, либо программно.

   
 
 автор: valenok   (30.08.2006 в 18:56)   письмо автору
 
   для: RV   (30.08.2006 в 15:32)
 

После установки кук надо писать $_COOKIE['index'] = 'val'; и всё хорошо..

   
 
 автор: AlMag   (31.08.2006 в 09:38)   письмо автору
 
   для: valenok   (30.08.2006 в 18:56)
 

Да, я дописал

$_COOKIE["a"]=$a

после setcookie.
Спасибо.

   
 
 автор: Trianon   (31.08.2006 в 09:53)   письмо автору
 
   для: AlMag   (31.08.2006 в 09:38)
 

Огребете глюков по самое небалуйся.

   
 
 автор: AlMag   (31.08.2006 в 17:41)   письмо автору
 
   для: Trianon   (31.08.2006 в 09:53)
 

Почему?

   
 
 автор: Trianon   (31.08.2006 в 18:14)   письмо автору
 
   для: AlMag   (31.08.2006 в 17:41)
 

потому что в setcookie пишется запрос на установку, изменение, удаление кукиса.
А в $_COOKIES читается результат этого запроса.
Запрос исполняет клиент, т.е. браузер.
Он может его выполнить а может и не выполнить.
Более того, до него запрос может даже не дойти.
Истинный результат можно получить не ранее следующего шага.

   
 
 автор: AlMag   (31.08.2006 в 19:35)   письмо автору
 
   для: Trianon   (31.08.2006 в 18:14)
 

Вы можете написать это, на каком-то примере показать?

   
Rambler's Top100
вверх

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