Куки на клиенте! Скрипт на сервере! и моментально ничего произойти НЕ МОЖЕТ! Если скрит выполнился и в нем была установка куку в прошлое - это не означает что она установиться! - может произойти обрыв связи, клиент может недождаться ответа сервера и закрыть страницу и т.п.
нужно посылать повторный запрос после функции удаления ? Така это в голову приходит и делать это нужно тогда с помощью while.... или достаточно повторной запрос сделать один раз... PHP: <?php if (!isset($_COOKIE['user'])){ echo "Cookie не найдены"; } else { setcookie('user', time()-3600); setcookie('password', time()-3600); setcookie('live', time()-3600); setcookie('dead', time()-3600); if (!isset($_COOKIE['user'])){ echo "Cookie не найдены"; } else { setcookie('user', time()-3600); setcookie('password', time()-3600); setcookie('live', time()-3600); setcookie('dead', time()-3600); echo "Cookie, найденные у клиента - стёрты!"; } ?>
PHP: <?php setcookie('user', time()-3600); setcookie('password', time()-3600); setcookie('live', time()-3600); setcookie('dead', time()-3600); if (!isset($_COOKIE['user'])){ echo "Cookie не найдены"; } else { while ($dead == !isset($_COOKIE['user'])): endwhile; } echo "Cookie, найденные у клиента - стёрты!"; ?>
т.е. Без $dead PHP: <?php setcookie('user', time()-3600); setcookie('password', time()-3600); setcookie('live', time()-3600); setcookie('dead', time()-3600); if (!isset($_COOKIE['user'])){ echo "Cookie не найдены"; } else { while (!isset($_COOKIE['user'])): endwhile; } echo "Cookie, найденные у клиента - стёрты!"; ?>
или я опять на лыжи встал? во т вариант - он больше нравится PHP: <?php //Сначала удаляем куки setcookie('user', time()-3600); setcookie('password', time()-3600); setcookie('live', time()-3600); setcookie('dead', time()-3600); //а потом проверяем if (!isset($_COOKIE['user'])){ echo "Cookie не найдены"; } else { echo "что то там не так"; } ?>
тут же мы по факту не удаляем куки, а устанавливаем мёртвые куки - так что ошибки быть не должно. Если не так - то я здаюсь.
И Fatality http://phpfaq.ru/na_tanke И GameOver PHP: <? if(empty($_COOKIE['cook'])) { setcookie("cook","cooka true",time()+60*60*24,"/"); header("Refresh:2"); die('Cooka set'); }else{ $out=$_COOKIE['cook']; if(rand(0,1)){ header("Refresh:3"); setcookie("cook",""); $out.="<br>Cooka **ka"; } print $out; } ?>
как я понял PHP: <? if(empty($_COOKIE['cook'])) { // проверяем наличие cookie setcookie("cook","cooka true",time()+60*60*24,"/"); // не находим -> создаём на сроком день ????? header("Refresh:2"); // Обновляем через 2 раза? (будет ошибка - у меня session_start();) die('Cooka set'); // Убиваем ? }else{ $out=$_COOKIE['cook']; // присваиваем значение переменной if(rand(0,1)){ // не понял header("Refresh:3"); // обновляем 3 раза или через 3 сек ? setcookie("cook",""); // Убиваем $out.="<br>Cooka **ka"; // исваиваем значение переменной } print $out; // показываем } ?> Нужно описать бы, а то не догнал.
- надо бы найти товарища который ввёл меня в заблуждение. И сказать спасибо. rand() - генерирует случайное значение. - но для чего мы это используем?
она просто тоже куку создаёт, я имел ввиду что сессион старт не делает никакого вывода случайно один или ноль, случайно условие да\нет
PHP: if(rand(0,1)){ header("Refresh:3"); setcookie("cook",""); $out.="<br>Cooka **ka"; } if(rand(0,1)) - тогда зачем создавать условие - если результат всегда true Почему просто так не написать ? PHP: header("Refresh:3"); setcookie("cook",""); $out.="<br>Cooka **ka"; Я так и не понял зачем используем rand() Ты уж не псифиг если что - просто если я тупо возьму этот код и использую - то я не сдвинусь с места [/php]
А..... и чтоб фунция выполнилась - мы обновляем страницу header("Refresh:3"); - 100% поймать true; ??? Проще говоря rand() нужно чтобы сформулировать условие. так ?
Вот такая проблема. Не могу создать куки (не посылается header) PHP: <?php session_start(); $dt = time(); $new_dt = mktime(date("H",$dt)+72, date("i",$dt), date("s",$dt), date("m",$dt) , date("d",$dt), date("Y",$dt)); $sd_registr = date("m.d.y [H:i:s]",$dt); $sd_registr_dead = date("m.d.y [H:i:s]",$new_dt); if (!isset($_COOKIE['c_username'])){ echo "<table class=mes><td height=33 valign=middle> <font class=menu-white> » <b>Сообщениеnbsp;« </b><td align=center width=1040px valign=middle bgcolor=yellow><font class=menu> Привет гость. Зарегистрируйся.</font></table>"; ?> из-за этой строчки Код (Text): <font class=menu-white> » <b>Сообщениеnbsp;« </b><td align=center width=1040px В чём проблема ????