Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не работает механизм сессий (совсем)

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
MightGuy
Отправлено: 14 Августа, 2010 - 11:26:00
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Здраствуйте, уважаемые пользователи....

Делал систему регистрации пользователей на сайт...
Заметил то что не работают переменные сессии...
Попробовал самый простой пример на отдельной станичке, где вообще ничего никогда не было...
PHP:
скопировать код в буфер обмена
  1. <?PHP session_start();
  2. if (!isset($_SESSION['count'])) {
  3.     $_SESSION['count'] = 0;
  4. } else {
  5.     $_SESSION['count']++;
  6. }
  7. echo "Просто фраза для проверки загрузки страницы";
  8. ?>


И так и ничего не заработало...
Работаю на локальном хосте.... Стоит денвер последней версии...
Подскажите что делать дальше?
 
 Top
Champion Супермодератор
Отправлено: 14 Августа, 2010 - 11:34:40
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Для начала включить вывод сообщений об ошибок. И вообще прочитать http://phpfaq[dot]ru/debug или http://forum.php.su/topic.php?fo...=62&topic=78
 
 Top
MightGuy
Отправлено: 14 Августа, 2010 - 11:45:33
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Пробовал пройти по пути как сказано в phpfaq.ru/debug

Включилрепорт ошибок хотя он и был уже включен.....

Пустой экран за исключением одной фразы....: Просто фраза для проверки загрузки страницы

По идее если переменная не отображается значит её просто нет, я прав?
 
 Top
Champion Супермодератор
Отправлено: 14 Августа, 2010 - 11:55:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




MightGuy пишет:
По идее если переменная не отображается значит её просто нет, я прав?
Ну еще возможно, что она не выводится. Я, например, не вижу, как по этому коду можно увидеть неработоспособность сессии.
MightGuy пишет:
Включилрепорт ошибок
Еще их уровень нужно поставить в E_ALL:
error_reporting(E_ALL); // ehjdtym
display_errors(1); // показывать
Так включал?
 
 Top
MightGuy
Отправлено: 14 Августа, 2010 - 12:05:53
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




возможно я криворукий дебил, но когда я пишу так:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. display_errors(1);
  3.  

он мне выводит
CODE (htmlphp):
скопировать код в буфер обмена
  1. Fatal error: Call to undefined function display_errors()
 
 Top
Реф
Отправлено: 14 Августа, 2010 - 12:07:03
Post Id



Частый гость


Покинул форум
Сообщений всего: 159
Дата рег-ции: Июль 2010  
Откуда: Реутов, Россия


Помог: 0 раз(а)




MightGuy пишет:
И так и ничего не заработало...

Что не заработало-то? Откуда такой вывод?


-----
Думать надо головой, а не головкой!
 
 Top
MightGuy
Отправлено: 14 Августа, 2010 - 12:08:35
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Хорошо, скажу так: в окне браузера ничего не вывелось....
 
 Top
Реф
Отправлено: 14 Августа, 2010 - 12:10:13
Post Id



Частый гость


Покинул форум
Сообщений всего: 159
Дата рег-ции: Июль 2010  
Откуда: Реутов, Россия


Помог: 0 раз(а)




MightGuy пишет:
Пустой экран за исключением одной фразы....: Просто фраза для проверки загрузки страницы

но фраза то вывелась. Или нет?


-----
Думать надо головой, а не головкой!
 
 Top
MightGuy
Отправлено: 14 Августа, 2010 - 12:15:09
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Да, вы велась, но
Фишка то не в ней, если бы она не вывелась, значит не работает либо локалхост, либо страница, а из это я и выяснил что не работают сессии....
 
 Top
Champion Супермодератор
Отправлено: 14 Августа, 2010 - 12:15:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




MightGuy, ini_set ('display_errors', 1). Вот так. Это я стормозил.
MightGuy пишет:
Хорошо, скажу так: в окне браузера ничего не вывелось....
Тогда я скажу так: а что должно было вывеститсь, кроме той фразы?
 
 Top
MightGuy
Отправлено: 14 Августа, 2010 - 12:23:15
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Чёрт!!! Тема вообще ниочём!
Знаете, рядом со мной сидит друг, предложивший этот код и пытающийся мне доказать, что ничего не работает..... Я его сейчас убью.....

Ещё раз прошу прощение за то что лишний раз потревожил форум....
 
 Top
Uchkuma
Отправлено: 14 Августа, 2010 - 13:07:11
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


Помог: 6 раз(а)




Вместо
PHP:
скопировать код в буфер обмена
  1. echo "Просто фраза для проверки загрузки страницы";
пишите
PHP:
скопировать код в буфер обмена
  1. echo 'Эта страница была загружена '.$_SESSION['count'].' раз.';

(Добавление)
а друга на виселицу! Помираю со смеху!
 
 Top
JustUserR
Отправлено: 15 Августа, 2010 - 01:12:43
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




MightGuy пишет:
Знаете, рядом со мной сидит друг, предложивший этот код и пытающийся мне доказать, что ничего не работает
На самом деле существуют достаточно похожие ситуации в которых несмотря на общий правильный вид работы с PHP-сессией - сохраненные сессионные значения между вызовами не передаются Причиной этого явления как правило является неправильная автоматическая передача идентификатора сессии SESSID - и соответственно для решения такого вопроса можно отключить автоматческую передачу SESSID и осуществить ее вручную путем получения соответствующего значения из функции session_id и его дальнейшей передачи собственными методами - и восстановки сессии путем указания в фукнции session_start полученного идентификатора


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
MightGuy
Отправлено: 15 Августа, 2010 - 17:15:53
Post Id



Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




всё дело в том, что действительно забыл вывести переменную на экран... спасибо)
друг дожидается приговора за убитый день..)
на старых страницах не работали сессии ибо я думал, что их надо стартовать один раз за загрузку браузера и переход на мою страницу, оказалось, что на каждой странице)

всем спасибо за помощь ещё раз и извините за зря занятое место в базе данных)
 
 Top
JustUserR
Отправлено: 16 Августа, 2010 - 00:40:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




MightGuy пишет:
На старых страницах не работали сессии ибо я думал, что их надо стартовать один раз за загрузку браузера и переход на мою страницу, оказалось, что на каждой странице
Для продолжения работы с одной текущей сессией в группе связанных PHP-скриптов действительно необходимо при запуске каждый раз вызывать функция инициализации сессии - и это связано вовсе не с тем что автоматизированного механизма не могло бы существовать а с несколько иной причиной Дело в том что функция session_start на самом деле имеет агрумент в котором указывает идентификатор для сессии которую необходимо подключить к текущему сеансу выполнения - или создать новую если файл с сериализованным сессионными переменными недоступен - при этом идентификатор может передаваться различными способами При использовании функции без аргумента она использует значение PHPSESSID - поэтому ее запуск необходим для каждой инстанции PHP-скрипта для огранизации подключения требуемых сессионных данных


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB