COOKIE. Броузер отдает их тока со второго раза

  • Автор темы Автор темы Денч
  • Дата начала Дата начала

Денч

Новичок
COOKIE. Броузер отдает их тока со второго раза

Убейте меня, если вопрос вам надоел. Поиск не помог...
Делаю авторизацию на куках. Но вот беда - куки отдаются броузером тока со второго раза (после рефреш)
Пример кода:
файл testcoo.php
PHP:
setcookie ("aa", "1"); 
setcookie ("ss", "2"); 
setcookie ("dd", "3"); 

echo "<pre>";
var_dump($_COOKIE);
echo "</pre>";

запускаю http://localhost/testcoo.php
вывод:
Код:
array(0) {
}
Жму рефреш
вывод:
Код:
array(3) {
  ["aa"]=>
  string(1) "1"
  ["ss"]=>
  string(1) "2"
  ["dd"]=>
  string(1) "3"
}

В чем тут дело? Как вылечить?
PHP 4.3.11
 
а ты что хотел? браузер еще не передал скрипту куки в запросе

http://phpfaq.ru/na_tanke

переадресацию сделай например
 
Об этом даже в мануале написано
[m]setcookie[/m]
Да и с точки зрения логики надо понимать, что поставить куку и получить куку - это не одно и то же. То, что ты её поставил, ещё не значит, что ты её вообще когда-нибудь получишь от клиента.
 
Ok, с этим разобрался. Вот такой вопрос -
файл index.php находится в директории www/list
Там есть такие строчка
PHP:
if($_COOKIE['auth']==1)
{
	$adm_mode="auth";
	$hello="Здравствуйте, ".$_COOKIE['login']."<br>";
}

файлы adm.php и auth.php находятся в директории www/list/core
adm.php
PHP:
if($_COOKIE['auth']==1)
{
	header("Location: http://site/list/index.php");
	exit();
}
include "../tmpl/login.html";
auth.php
PHP:
собственно авторизация

Почему при таком расположении файлов скриптов куки не видны в файле index.php, хотя если положить файлы adm.php и auth.php рядом с index.php, все в порядке?
 
потому, что ты не читал документацию на функцию, которой пользуешься.
 
php.net/setcookie
параметр path
If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in.
 
Автор оригинала: Нечто
Похоже на машинный перевод =)
:D
Машинный перевод машинного перевода
"Оправдание, это плохо во мне с Английским языком.
Не сразу понял, относительно что там речь ... "
:D
 
Сверху