Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

$_SESSION в 3.1 недоступны?

Проблемы с установкой или работой phpBB 3.1.x? Получите помощь здесь!
С 1 июля 2018 года phpBB Group прекращает поддержку phpBB версии 3.1.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.1 до 1 января 2019 года.
Подробнее: Окончание поддержки phpBB 3.1.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16372
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

Re: $_SESSION в 3.1 недоступны?

Сообщение rxu »

Неясно, почему такой эффект. В текущем коде $_SESSION никак не блокируется.
Изображение
xfarrier
phpBB 1.0.0
Сообщения: 1
Стаж: 11 лет 8 месяцев

Re: $_SESSION в 3.1 недоступны?

Сообщение xfarrier »

Проблема ясна, источник "фичи" в Symfony. Просто так, по нормальному заюзать стандартный php session management не получится.
Два пути:
1. включать super_globals перед началом работы со стандартными сессиями ($request->enable_super_globals();)
2. Пользоваться http://symfony.com/doc/current/componen ... sions.html
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2209
Стаж: 16 лет 4 месяца
Откуда: Павлодар
Благодарил (а): 5 раз
Поблагодарили: 153 раза

Re: $_SESSION в 3.1 недоступны?

Сообщение nissin »

Недавно столкнулся с данной ситуацией. Проблема в переменных $_GET и $_COOKIE.
Поэтому примерно так:

Код: Выделить всё

		if (!session_id())
		{
			$session_url = $this->request->variable(session_name(), '', false, \phpbb\request\request_interface::GET);
			$session_cookie = $this->request->variable(session_name(), '', false, \phpbb\request\request_interface::COOKIE);
			if($session_url)
			{
				session_id($session_url);
			}
			elseif($session_cookie)
			{
				session_id($session_cookie);
			}

			session_start();
		}
$this->request это экземляр класс phpbb\symfony_request
Всё повторяется. nurlan.info

Вернуться в «Поддержка phpBB 3.1.x»