ох уж эти куки то работают то нет

senich

Новичок
ох уж эти куки то работают то нет

Народ помогите плиззз я понимаю тема избитая, но ни на одном форуме ни в одной доке я удовлетворительного ответа не нашел :(((( :confused:
и так по порядку:
1. есть локальная машина с апачем пхп и май скл
2. есть скриптик(в отдельном файле):
session_start("rockfootball");
$errind=0;
$errmessage="";
if ((!isset($login)) or (!isset($password)))
{
$errind++;
$errmessage = $errmessage."<div class=\"systxt\" nowrap>".$errind.". Не заполнена форма для авторизации.</div><br>";
}
$link = mysql_connect() or die("Could not connect: " . mysql_error());
mysql_select_db(ROOT_DB);
$query = "SELECT * FROM usersdb WHERE login = '".$login."' AND password = '".$password."'";
$result = mysql_query($query) or die(" Invalid query = ".$query." ".mysql_error());
$numrows=mysql_numrows($result);
if ($numrows == 0)//не нашли не одного пользователя
{
$errind++;
$errmessage=$errmessage."<div class=\"systxt\" nowrap>".$errind.". Пользователь с таким логином или паролем не найден.</div><br>";
}
if ($numrows != 1)//нашли более чем одного пользователя
{
$errind++;
$erressage=$errmessage."<div class=\"systxt\" nowrap>".$errind.". Системная ошибка.</div><br>";
}
if ($numrows == 1)//типа все путем нашли одного юзера
{
$towrite1 = $login;
$towrite2 = $password;
setcookie("usrlogin", $towrite1, time()+60*60*24*365);
setcookie("usrpassword", $towrite2, time()+3600);
}
if ($errind != 0)
{
$main_content = $errmessage;
}
header("Location: ".ROOT_DOMAINE."index.php?content=main");
?>
куки видны только в этом файле при переходе на "index.php?content=main" в куках лежит только PHPSESID
3. при этом при всем такой вот скриптик работает аж бегом и летает просто превосходно:

session_start("rockfootball");
if (!isset($counter))$counter=0;
$counter++;
setcookie("counter", $counter, time()+60*60*24*365);
echo $counter;

т.е. из всего выше изложенного можно сделать вывод что причина в написании скрипта(п.2) или в ДНК(моем)
 

Фанат

oncle terrible
Команда форума
при работе с куками рекомендую отслеживать обмен НТТР заголовками
как это сделать - написано в http://phpfaq.ru/na_tanke
смотри глазами - отсылается ли что-нибудь
а то ли отсылается, что надо?
 

Yuriy_S

-=PHP-Club=-
а в браузер что-нибудь выводится до того, как ты отправляешь куки?
 

senich

Новичок
Автор оригинала: Yuriy_S
а в браузер что-нибудь выводится до того, как ты отправляешь куки?
нееее ни в коем случае только если какието траблз с май скл

-~{}~ 12.06.04 14:14:

читал я и этот faq, но ничего нового для себя не подчерпнул, куки нет нигде ни в каком глобальном массиве
 

senich

Новичок
Автор оригинала: lucas
Вот оно!

Что в ROOT_DOMAINE?
Скрипт, ставищий куку, и скрипт, читающий куку, находятся на разных доменах?
ROOT_DOMAIN константа(чтобы потом легче было выкладывать в нет) в ней лежит если быть точным "http://senich/" и кругом к ссылкам приписывается эта константа, поэтому все скрипты находятся в домене который указан ROOT_DOMAINE, но в разных папках п.2 лежит http://senich/users/authorization.php а читается(точнее не читается) в http://senich/index.php
 

lucas

Guest
Потестируй такой пример:

setcookie('name1','value1',time() + 120) ;
print_r($_COOKIE) ;

Что выведется после рефреша?
 

senich

Новичок
Автор оригинала: lucas
Потестируй такой пример:

setcookie('name1','value1',time() + 120) ;
print_r($_COOKIE) ;

Что выведется после рефреша?
это работает т.е. я делал так:
$towrite1 = $login;
$towrite2 = $password;
setcookie("usrlogin", $towrite1, time()+60*60*24*365);
setcookie("usrpassword", $towrite2, time()+3600);
print_r ($HTTP_COOKIE_VARS); или print_r($_COOKIE);//вроде одно и тоже

т.е. это работает только в одном файле authorization.php, когда в index.php делаю
print_r ($HTTP_COOKIE_VARS); или print_r($_COOKIE);
то в куках только PHPSESSID, рефреш делал и ничего как был PHPSESSID так он один и лежит
 

Фанат

oncle terrible
Команда форума
блин.
здесь кто-нибудь имеет голову на плечах?
или только жбан с пивом?

lucas
ты вообще - в состоянии понять, что отлаживать надо ПО ПРИЧИНАМ, а не по следствиям, а?!

к чему все эти рыдовые рыдания?
ты читал, что я написал?
ну так собери глаза в кучку и воткни.

гуру из себя строишь? знатока иизображаешь?
исчезни

-~{}~ 12.06.04 15:02:

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

и еще.
скажи - ты считаешь, что кука вот так прямо браузеру и отправляется - вот такая строчка
setcookie("usrlogin", $towrite1, time()+60*60*24*365);
возвращается браузеру, да?
 

senich

Новичок
Автор оригинала: Фанат

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

и еще.
скажи - ты считаешь, что кука вот так прямо браузеру и отправляется - вот такая строчка
setcookie("usrlogin", $towrite1, time()+60*60*24*365);
возвращается браузеру, да?
в ответе мне все поянтно, я это все пережевывал уже не раз.
на счет кук я самого механизма работы кук не знаю, т.е. для меня они передаются строчками в заголовке и являются локальными переменными окружения, а на счет возвращается ли строка броузеру - как это глянуть?

-~{}~ 12.06.04 15:17:

сорри протупил немного(точнее поторопился с ответом) счазз скачаю утилитку просмотра заголовков и гляну

-~{}~ 12.06.04 15:22:

Фанат, во че в заголовке передается на счет моих кукисов

Set-Cookie: usrlogin=deleted; expires=Fri, 13-Jun-2003 10:27:49 GMT

-~{}~ 12.06.04 15:24:

них не понимаю зачем 2003 год?!?!?!
 

Фанат

oncle terrible
Команда форума
слава богу.
а наш профессор лукас еще сто лет бы на кофейной гуще гадал.

выведи-ка у себя в скрипте echo date("Y");
может быть, время сбито на сервере?
 

senich

Новичок
Автор оригинала: Фанат
слава богу.
а наш профессор лукас еще сто лет бы на кофейной гуще гадал.

выведи-ка у себя в скрипте echo date("Y");
может быть, время сбито на сервере?
Фанат спасиб что направил в нужное русло, но!!! тут вообще что то странное время и дата на серваке работает путем т.е.
$today=strftime("%H - %M, %d : %B : %Y", time());
echo "-> ".$today;
выводит все как положено, и какое бы значиния времени жизни куки(time()+3600, time()+60*60*24*365 и т.д. и т.п.) не поставил в любом случае в заголовок идет
Set-Cookie: usrlogin=deleted; expires=Sat, 14-Jun-2003 09:53:26 GMT
 

Фанат

oncle terrible
Команда форума
по ходу, у тебя гдето в коде еще раз кука ставится
 

senich

Новичок
хммм.... счаз поищем

-~{}~ 13.06.04 15:08:

Действительно было дело - забыл закоментить, но теперь в заголовке вооооообще про куку ничего не передается. Поэтому проблема переходит в ранг стандартных и думаю можно считать закрытой, и я иду читать доки и faq'и.
Фанат спасиб огромное за помощь!!!!
 
Сверху