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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Cookies

Сообщения:  [1-8] 

 
 автор: isset   (18.02.2005 в 01:16)   письмо автору
 
   для: Адоп Акробат   (18.02.2005 в 01:08)
 

А вы не забыли что куки установлены будут не сразу, а только после второго обращения? Т. е. такой скрипт:

<?
setcookie
("test","test");
echo 
$_COOKIE['test'];
?>

выведет "test" только после второго обращения к скрипту.

   
 
 автор: Адоп Акробат   (18.02.2005 в 01:08)   письмо автору
 
   для: cheops   (16.02.2005 в 22:16)
 

post

   
 
 автор: cheops   (16.02.2005 в 22:16)   письмо автору
 
   для: Адоп Акробат   (15.02.2005 в 23:47)
 

А под $_REQUEST, что идёт $_POST или $_GET?

   
 
 автор: Адоп Акробат   (15.02.2005 в 23:47)   письмо автору
 
   для: cheops   (15.02.2005 в 23:27)
 

Первый запрос просто сравнивает есть ли такой пользователь. Если он есть то записываеца в куку его логин

Мой сайте полностью держится на сессиях, сессия login хранит логи пользователя.
А куку просто напоминает сессии о логине. Вот допустим я сежу на сайте(работает сессии) потом я ушел допустим надень, зашел на сайт и кука напоминает сессии о мне то есть передает свое значение

   
 
 автор: cheops   (15.02.2005 в 23:27)   письмо автору
 
   для: Адоп Акробат   (15.02.2005 в 22:57)
 

Не очень понятна роль cookie - обычно используется либо куки, либо сессии - а тут похоже и то и то... и какой запрос сбоит - первый или второй? Первый берёт зашифрованное значение из cookie, а не из сессии. Попробуйте его вывести - что в нём?

   
 
 автор: Адоп Акробат   (15.02.2005 в 22:57)   письмо автору
 
   для: cheops   (15.02.2005 в 21:12)
 

Супер глобальный масив $_COOKIE содержит "Array ( [aa] => $&Иn†SЬп ) " :)
А сам запрос:

select * from users where login='admin' and user_pro='admin' 

Если честро мне очень смешно потому что супер глобальный масив $_SESSION содержит мой логин но когда он сравнивает его в базе данных то он говорит точто нет такого пользователя

   
 
 автор: cheops   (15.02.2005 в 21:12)   письмо автору
 
   для: Адоп Акробат   (15.02.2005 в 18:33)
 

Хм... а вы попробуйте вывести содержимое суперглобального массива $_COOKIE непосредственно перед выводом, а ещё лучше выведите в окно бразера сам SQL-запрос
<?php
print_r
($_COOKIE);
?>

   
 
 автор: Адоп Акробат   (15.02.2005 в 18:33)   письмо автору
 
 

Доброе время суток.
Я уже не могу пятый день борюсь с этой проблемой и ничего не получается :(
Вроде все правильно: кодируется, записывается в куку, выводится из куки, разкодировается, присваивается значение к сессии но когда сравнивается логин(который вытащен из кук) с логином в базе то он говорит то что такова логина нет.
Может он кодирует в другую кодировку? или может еще есть какие не будь прибаббасы :)
Вод кусочек кода:

<?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$inputMCRYPT_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];
 }
 }
}
?>

   

Сообщения:  [1-8] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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