|
|
|
|
|
для: Адоп Акробат
(18.02.2005 в 01:08)
| | А вы не забыли что куки установлены будут не сразу, а только после второго обращения? Т. е. такой скрипт:
<?
setcookie("test","test");
echo $_COOKIE['test'];
?>
|
выведет "test" только после второго обращения к скрипту. | |
|
|
|
|
|
|
|
для: cheops
(16.02.2005 в 22:16)
| | post | |
|
|
|
|
|
|
|
для: Адоп Акробат
(15.02.2005 в 23:47)
| | А под $_REQUEST, что идёт $_POST или $_GET? | |
|
|
|
|
|
|
|
для: cheops
(15.02.2005 в 23:27)
| | Первый запрос просто сравнивает есть ли такой пользователь. Если он есть то записываеца в куку его логин
Мой сайте полностью держится на сессиях, сессия login хранит логи пользователя.
А куку просто напоминает сессии о логине. Вот допустим я сежу на сайте(работает сессии) потом я ушел допустим надень, зашел на сайт и кука напоминает сессии о мне то есть передает свое значение | |
|
|
|
|
|
|
|
для: Адоп Акробат
(15.02.2005 в 22:57)
| | Не очень понятна роль cookie - обычно используется либо куки, либо сессии - а тут похоже и то и то... и какой запрос сбоит - первый или второй? Первый берёт зашифрованное значение из cookie, а не из сессии. Попробуйте его вывести - что в нём? | |
|
|
|
|
|
|
|
для: cheops
(15.02.2005 в 21:12)
| | Супер глобальный масив $_COOKIE содержит "Array ( [aa] => $&Иn†SЬп ) " :)
А сам запрос:
select * from users where login='admin' and user_pro='admin'
|
Если честро мне очень смешно потому что супер глобальный масив $_SESSION содержит мой логин но когда он сравнивает его в базе данных то он говорит точто нет такого пользователя | |
|
|
|
|
|
|
|
для: Адоп Акробат
(15.02.2005 в 18:33)
| | Хм... а вы попробуйте вывести содержимое суперглобального массива $_COOKIE непосредственно перед выводом, а ещё лучше выведите в окно бразера сам SQL-запрос
<?php
print_r($_COOKIE);
?>
|
| |
|
|
|
|
|
|
| Доброе время суток.
Я уже не могу пятый день борюсь с этой проблемой и ничего не получается :(
Вроде все правильно: кодируется, записывается в куку, выводится из куки, разкодировается, присваивается значение к сессии но когда сравнивается логин(который вытащен из кук) с логином в базе то он говорит то что такова логина нет.
Может он кодирует в другую кодировку? или может еще есть какие не будь прибаббасы :)
Вод кусочек кода:
<?php
if($_REQUEST["name"] == "enter")
{
$query_cookie = mysql_query("select * from user where login='$_REQUEST[login]' and password=md5('$_REQUEST[password]')");
$row_cookie = mysql_fetch_object($query_cookie);
if(mysql_num_rows($query_cookie) > 0)
{
if(!empty($_REQUEST["remember"]))
{
$key = "dhgsdfasdfsd";
$input = $row_cookie->login;
$encrypted_data = mcrypt_ecb(MCRYPT_BLOWFISH, $key, $input, MCRYPT_ENCRYPT);
setcookie("aa", "$encrypted_data", time() + 3600*24*7);
}
}
}
if(isset($_COOKIE["aa"]))
{
$key = "dhgsdfasdfsd";
$input = mcrypt_ecb(MCRYPT_BLOWFISH, $key, $_COOKIE["aa"], MCRYPT_DECRYPT);
if(!isset($_SESSION[login]))
{
$_SESSION[login] = $input;
$query_cookie1 = mysql_query("select * from user where login='$_SESSION[login]' and user_pro='admin'");
if(mysql_num_rows($query_cookie1) > 0)
{
$_SESSION["admin"] = $_SESSION[login];
}
}
}
?>
|
| |
|
|
|
|