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

Не сохраняется сессия

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Не сохраняется сессия

Сообщение blue whale »

Здравствуйте, уважаемая техподдержка! Прошу помощи с решением проблемы на форуме.

Описание проблемы: Не сохраняется сессия, не работает автоматический вход, разлогин при переходе с любой внешней ссылки.
Произведенные изменения, после которых начались неполадки: Хостер перевел нас с PHP 5.2 на PHP 5.4. Других изменений на форуме за тот период не было.
Версия phpBB: 3.0.12
Используемые стили: Avalon
Используемые моды: hook_antibot100500
Версия PHP: 5.4
Ссылка на конференцию: http://www.crossroad-blues.net/forum/index.php
Есть ли у вас тестовый аккаунт: логин: blue whale пароль: test112

Домен куки: .crossroad-blues.net
Имя куки: phpbb3_2aklicros
Путь куки: /
Безопасные куки [ https ]: Отключено
Имя домена: http://www.crossroad-blues.net

Пробовала все советы по настройке куки из тем FAQ: Проблема со входом/выходом (настройки cookie) и Не сохраняется сессия. Меняла настройки куки, чистила кэш и кукисы браузера, чистила таблицы sessions и sessions_keys, ничего не помогло.
Форум устанавливал другой человек, с которым теперь нет связи, а я очень слабо в этом разбираюсь. Помогите, пожалуйста!
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: Не сохраняется сессия

Сообщение Татьяна5 »

Включите дебаг, что пишет?
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Re: Не сохраняется сессия

Сообщение blue whale »

Убрала, пишет вот что:

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

[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1908: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1897: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1916: Array to string conversion
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3554: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2975)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3556: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2975)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3557: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2975)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3558: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2975)
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11234
Стаж: 14 лет 2 месяца
Откуда: fotovideoforum.ru
Благодарил (а): 1782 раза
Поблагодарили: 1340 раз
Контактная информация:

Re: Не сохраняется сессия

Сообщение Пчелкин »

Теперь неплохо бы или указанные файлы сюда архивом в атаче или указанные сроки указанных файлов плюс-минут 10 строк выше ниже в теге [ code][/code]...
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Re: Не сохраняется сессия

Сообщение blue whale »

Татьяна5, правильно ли я понимаю, по ссылке советуют в файле includes/session.php убрать под коммент строчку кода, которая вызывает ошибку, вот эту:

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

return strtr(@gmdate($date_cache[$format]['format_long'], $gmepoch + $zone_offset), $date_cache[$format]['lang']);
В моем файле такой строчки нет, похожее нашла только вот такое (две одинаковые), и они вроде не о том:

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

return strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates);
Я попыталась их поместить под коммент, и форум просто не открылся.

Пчелкин
Вкладываю архив.
Вложения
functions_session.rar
(43.46 КБ) 176 скачиваний
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: Не сохраняется сессия

Сообщение Татьяна5 »

blue whale писал(а):убрать под коммент
Нет. Советуют поставить @ перед strtr
blue whale писал(а):похожее нашла только вот такое (две одинаковые)
Старая версия форума. Ошибки пишет на обеих строках -
blue whale писал(а):

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

in file /includes/session.php on line 1897:
in file /includes/session.php on line 1916:
Попробуйте обе строки на

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

return @strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates);
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Re: Не сохраняется сессия

Сообщение blue whale »

Татьяна5

Заменила обе строчки на

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

return @strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates);
- не помогло, никакой разницы((
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Re: Не сохраняется сессия

Сообщение blue whale »

Да. И с другого браузера заходила.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: Не сохраняется сессия

Сообщение Татьяна5 »

Как временное решение -

Найти

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

	/**
	* Format user date
	*/
	function format_date($gmepoch, $format = false, $forcedate = false)
	{
		static $midnight;

		$lang_dates = $this->lang['datetime'];
		$format = (!$format) ? $this->date_format : $format;

		// Short representation of month in format
		if ((strpos($format, '\M') === false && strpos($format, 'M') !== false) || (strpos($format, '\r') === false && strpos($format, 'r') !== false))
		{
			$lang_dates['May'] = $lang_dates['May_short'];
		}

		unset($lang_dates['May_short']);

		if (!$midnight)
		{
			list($d, $m, $y) = explode(' ', gmdate('j n Y', time() + $this->timezone + $this->dst));
			$midnight = gmmktime(0, 0, 0, $m, $d, $y) - $this->timezone - $this->dst;
		}

		if (strpos($format, '|') === false || ($gmepoch < $midnight - 86400 && !$forcedate) || ($gmepoch > $midnight + 172800 && !$forcedate))
		{
			return strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates);
		}

		if ($gmepoch > $midnight + 86400 && !$forcedate)
		{
			$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);
			return str_replace('||', $this->lang['datetime']['TOMORROW'], strtr(@gmdate($format, $gmepoch + $this->timezone + $this->dst), $lang_dates));
		}
		else if ($gmepoch > $midnight && !$forcedate)
		{
			$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);
			return str_replace('||', $this->lang['datetime']['TODAY'], strtr(@gmdate($format, $gmepoch + $this->timezone + $this->dst), $lang_dates));
		}
		else if ($gmepoch > $midnight - 86400 && !$forcedate)
		{
			$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);
			return str_replace('||', $this->lang['datetime']['YESTERDAY'], strtr(@gmdate($format, $gmepoch + $this->timezone + $this->dst), $lang_dates));
		}

		return strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates);
	}
Заменить на

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

	/**
	* Format user date
	*/
	function format_date($gmepoch, $format = false, $forcedate = false)
	{
		static $midnight;

		$lang_dates = $this->lang['datetime'];
		$format = (!$format) ? $this->date_format : $format;

		// Short representation of month in format
		if ((strpos($format, '\M') === false && strpos($format, 'M') !== false) || (strpos($format, '\r') === false && strpos($format, 'r') !== false))
		{
			$lang_dates['May'] = $lang_dates['May_short'];
		}

		unset($lang_dates['May_short']);
		
		$lang_dates_string = array_filter($lang_dates, 'is_string');

		if (!$midnight)
		{
			list($d, $m, $y) = explode(' ', gmdate('j n Y', time() + $this->timezone + $this->dst));
			$midnight = gmmktime(0, 0, 0, $m, $d, $y) - $this->timezone - $this->dst;
		}

		if (strpos($format, '|') === false || ($gmepoch < $midnight - 86400 && !$forcedate) || ($gmepoch > $midnight + 172800 && !$forcedate))
		{
			return @strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates_string);
		}

		if ($gmepoch > $midnight + 86400 && !$forcedate)
		{
			$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);
			return str_replace('||', $this->lang['datetime']['TOMORROW'], @strtr(@gmdate($format, $gmepoch + $this->timezone + $this->dst), $lang_dates_string));
		}
		else if ($gmepoch > $midnight && !$forcedate)
		{
			$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);
			return str_replace('||', $this->lang['datetime']['TODAY'], @strtr(@gmdate($format, $gmepoch + $this->timezone + $this->dst), $lang_dates_string));
		}
		else if ($gmepoch > $midnight - 86400 && !$forcedate)
		{
			$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);
			return str_replace('||', $this->lang['datetime']['YESTERDAY'], @strtr(@gmdate($format, $gmepoch + $this->timezone + $this->dst), $lang_dates_string));
		}

		return @strtr(@gmdate(str_replace('|', '', $format), $gmepoch + $this->timezone + $this->dst), $lang_dates_string);
	}
А вообще обновляйтесь до 3.0.12, там этой проблемы нет
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Re: Не сохраняется сессия

Сообщение blue whale »

Татьяна5
Замена кода не помогла, к сожалению :(
А вообще обновляйтесь до 3.0.12, там этой проблемы нет
У меня в админке написано, что используется версия 3.0.12, проверила в таблице phpbb_config:
version 3.0.12
version_update_from 3.0.2

То есть была версия 3.0.2, ее обновили до 3.0.12? Может ли быть так, что у меня до сих пор установлена 3.0.2? Если да, то пойду обновлять, конечно!
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: Не сохраняется сессия

Сообщение Татьяна5 »

blue whale, файл includes/sessions.php у вас от версии 3.0.2
blue whale
phpBB 1.0.0
Сообщения: 7
Стаж: 9 лет 8 месяцев
Благодарил (а): 6 раз

Re: Не сохраняется сессия

Сообщение blue whale »

Татьяна5
Проблема решена! Помогло обновление до версии 3.0.12.

В админке значилось, что установленная версия форума - 3.0.12, но на самом деле это была 3.0.2 (без понятия, как это получилось, но сильно сбило с толку). Попытки обвиться автоматически ни к чему не привели, я обновила форум вручную. Обновление прошло без проблем, теперь у нас все в порядке с сохранением сессии!

Спасибо вам огромное за помощь от меня и от всех наших посетителей!
Закрыто

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