Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Исчезает сессия 
:(
    Опции темы
Areostar
Дата 12.10.2010, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2



Код

На одной странице саита размещаю данный фрагмент кода:

$login = $_POST['login']; $password = $_POST['password'];
         $query = "SELECT `id_user`, `status`  FROM `user_general` WHERE `nick_name`='$login' && `password`='$password' LIMIT 1";
             $sql = mysql_query($query) or die(mysql_error());

             session_start(); 
             if(mysql_num_rows($sql) == 1)
               {
                 $row = mysql_fetch_assoc($sql);
                 $_SESSION['user_id'] = $row['id_user'];
                 $_SESSION['status'] = $row['status'];

Сессия работает Куки в браузере включены!

Перехожу на другую страницу этогоже сайта и возвращаюсь! Страница отображается так как будто сессии нет! Почему так и что мне делать!??

PM MAIL   Вверх
MoLeX
Дата 12.10.2010, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



про session_start() надеюсь не забыли?


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
Areostar
Дата 12.10.2010, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2




 Нет не забыл!! Посмотрите на вставленый код
PM MAIL   Вверх
patap
Дата 12.10.2010, 09:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



Может быть сессия на данной странице и не запускалась? вориниги включены?

поставь в начале скрипта 

Код

error_reporting(E_ALL);





--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
Areostar
Дата 12.10.2010, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2



А как их проверить

Добавлено через 2 минуты и 16 секунд
На второй странице данные из сесии вообще не вынемаются!!! Хотя я сессион-старт включил! Что делоть!
PM MAIL   Вверх
bars80080
Дата 12.10.2010, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



в предложенном коде не показано, что должно меняться при наличии сессионных данных.

во-вторых, не ясно, что значит "Перехожу на другую страницу этогоже сайта и возвращаюсь". кнопку "назад" что ли в браузере нажимаете?
PM MAIL WWW   Вверх
Areostar
Дата 12.10.2010, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2





   НЕт там есть ссылка на гланую страницу! Я на второй странице я данные из сессии вообше вынуть немогу!

  Вот здесь http://phpfaq.ru/sessions#main  сказано про параметры настройки сессии!  как мне их проверить и если надо изменить! Сайт уже на Хостинге!
PM MAIL   Вверх
bars80080
Дата 12.10.2010, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



в предложенном коде не показано, что должно меняться при наличии сессионных данных.
в том коде, что вы показали, нет считывания данных из сессии и дальнейших операций. я лично не вижу, как вы видите, что сессия не работает
PM MAIL WWW   Вверх
Areostar
Дата 12.10.2010, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2




   Если вам так хочется то вот он:
    (на главной странице только ниже. Так что я всё прекрасно вижу!!)

Код

  <?php
               //  error_reporting(E_ALL); 
                 if($_SESSION['user_id'] == 1)
             {
                echo"<table border ='1'><tr><td align='center' width ='350' height ='205'>Здраствуйте Админ <br>
                <br> <a href='admin.php'>Админская</a> <br><br>
                Новых обьявлений:0 <br> Новых Сообщений:0 <br> Новых писем:0 <br> Выход</td></tr></table>";
             } 
             else if($_SESSION['user_id'] > 1)
             {
                $name = $_POST['login']; echo"<table border ='1'><tr><td align='center' width ='350' height ='205'>
                Здраствуйте $name ! <br><br> <a href ='private.php'>Личный Кобинет</a> <br>
                <a href ='post.php'>Cвязаться с администрацией сайта</a><br>Выход</td></tr></table>";
                 }
             else if(!$_SESSION['user_id'])
             {
                echo"<table border ='1'><tr><td align='center' width ='350' height ='205'>
                <form name='avtor' method='GET' action='index.php'> Вход для пользователей<br>
                    Логин<br>  <input type = 'text' name = 'login' size ='15'><br>
                Пароль<br>  <input type = 'password' name = 'password' size ='15'><br>

            <input type = 'submit' action='index.php' name = 'get_reg' value ='  Вход на сайт' size = '10'>
            <input type = 'reset' name = 'clear' value = 'Cброс' size = '10'><br>
            <input type = 'checkbox' name = 'rememberMe' value = 'remember'> Запомнить меня<br>
                    <a href ='regest.php'>Регистрация</a>  <a href ='vost_reg.php'>Забыл Пароль</a>
                    <br> <a href ='post.php'>Cвязаться с администрацией сайта</a> </form></td></tr></table>"; 
         }
        ?>


PM MAIL   Вверх
bars80080
Дата 12.10.2010, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



и какой вариант выводит? третий? ну, это кстати, не совсем корректно. он будет срабатывать при множестве разных значений.

в этом куске кода сверху есть session_start(); ?


а если всё же проверить саму сессию, что выведет?

var_dump($_SESSION);
PM MAIL WWW   Вверх
Areostar
Дата 12.10.2010, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2




  На первой страице:

    array(2) { ["user_id"]=> string(1) "1" ["status"]=> string(1) "1" }

  На второй ничего не отображается! Сессия исчезла! почитайте статью по ссылке из моего сообшения!! Может в этом дело!?
    
PM MAIL   Вверх
s0lman
Дата 12.10.2010, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



Когда-то я писал в коде формы
Код

action="send_message.php?sid=$PHPSESSID"

Может,  попробуйте передавать аналогичный параметр, вдруг поможет


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
patap
Дата 12.10.2010, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



Areostar, ответь на вопрос bars80080

Цитата(bars80080 @  12.10.2010,  14:07 Найти цитируемый пост)
в этом куске кода сверху есть session_start(); ?




--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
Areostar
Дата 13.10.2010, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2



Да сесион_старт есть везде!
PM MAIL   Вверх
Areostar
Дата 13.10.2010, 00:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2



Код на первой странице:

Первый фрагмент:

CODE  
Код

<?php
     if($_GET['login'] && $_GET['password'])
{
   $login = $_GET['login']; $password = $_GET['password'];
   $query = "SELECT `id_user`, `status`  FROM `user_general` WHERE `nick_name`='$login' && `password`='$password' LIMIT 1";
          $sql = mysql_query($query) or die(mysql_error());
          if(mysql_num_rows($sql) == 1)
            {
               $row = mysql_fetch_assoc($sql);
               $_SESSION['user_id'] = $row['id_user'];
               $_SESSION['status'] = $row['status'];
            }
       }
 ?> 


Второй

PHP Code 
Код

<?php
                 if($_SESSION['user_id'] == 1)
             {
                var_dump($_SESSION); 
                echo"<table border ='1'><tr><td align='center' width ='350' height ='205'>Здраствуйте Админ <br>
                <br> <a href='admin.php'>Админская</a> <br><br>
                Новых обьявлений:0 <br> Новых Сообщений:0 <br> Новых писем:0 <br> Выход</td></tr></table>";
             } 
             else if($_SESSION['user_id'] > 1)
             {
                $name = $_POST['login']; echo"<table border ='1'><tr><td align='center' width ='350' height ='205'>
                Здраствуйте $name ! <br><br> <a href ='private.php'>Личный Кобинет</a> <br>
                <a href ='post.php'>Cвязаться с администрацией сайта</a><br>Выход</td></tr></table>";
                 }
             else if(!$_SESSION['user_id'])
             {
                echo"<table border ='1'><tr><td align='center' width ='350' height ='205'>
                <form name='avtor' method='GET' action='index.php'> Вход для пользователей<br>
                    Логин<br>  <input type = 'text' name = 'login' size ='15'><br>
                Пароль<br>  <input type = 'password' name = 'password' size ='15'><br>

            <input type = 'submit' action='index.php?sid=$PHPSESSID' name = 'get_reg' value ='  Вход на сайт' size = '10'>
            <input type = 'reset' name = 'clear' value = 'Cброс' size = '10'><br>
            <input type = 'checkbox' name = 'rememberMe' value = 'remember'> Запомнить меня<br>
                    <a href ='regest.php'>Регистрация</a>  <a href ='vost_reg.php'>Забыл Пароль</a>
                    <br> <a href ='post.php'>Cвязаться с администрацией сайта</a> </form></td></tr></table>"; 
         }
        ?>  


распичатываю массив сесии через дамп всё в порядке

Перехожу на другую страницу распечатьваю там Массив пуст! session_start() и там присутствует!! В чем может быть причина этого!? 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0643 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.