Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Ошибки Illegal string offset (3.1.4)

Уважаемые гуру, прошу вашей помощи. Появились ошибки при поиске по форумам и пользователям. Думаю, что после обновления PHP до версии 5.4, но откатываться назад никак нельзя. Поэтому если есть решение прошу помочь.

 

Поиск по форумам выдает ошибку:

 

Warning: Illegal string offset 'contentOnly' in /www/site.ru/forum/admin/applications/forums/extensions/search/engines/sql.php on line 1055

Warning: Illegal string offset 'noPreview' in /www/site.ru/forum/admin/applications/forums/extensions/search/engines/sql.php on line 1049

Warning: Illegal string offset 'pCount' in /www/site.ru/forum/admin/applications/forums/extensions/search/engines/sql.php on line 1061

Warning: Illegal string offset 'pViews' in /www/site.ru/forum/admin/applications/forums/extensions/search/engines/sql.php on line 1067

 

При поиске среди пользователей:

 

Warning: Illegal string offset 'searchInKey' in /www/site.ru/forum/admin/applications/members/extensions/search/engines/sql.php on line 391

 

Версия IP.Board v3.1.4 PHP 5.4.4-14

Рекомендованные сообщения

Открыть /admin/applications/forums/extensions/search/engines/sql.php

Найти

		foreach( $data as $field => $_data )
		{
			/* CONTENT ONLY */
			if ( $field == 'noPreview' AND $_data['noPreview'] == 0 )
			{
				IPSSearchRegistry::set( 'opt.noPostPreview', false );
			}

			/* CONTENT ONLY */
			if ( $field == 'contentOnly' AND $_data['contentOnly'] == 1 )
			{
				IPSSearchRegistry::set( 'opt.onlySearchPosts', true );
			}

			/* POST COUNT */
			if ( $field == 'pCount' AND intval( $_data['pCount'] ) > 0 )
			{
				$return[] = array( 'column' => 't.posts', 'operator' => '>=', 'value' => intval( $_data['pCount'] ) );
			}

			/* TOPIC VIEWS */
			if ( $field == 'pViews' AND intval( $_data['pViews'] ) > 0 )
			{
				$return[] = array( 'column' => 't.views', 'operator' => '>=', 'value' => intval( $_data['pViews'] ) );
			}
		}

Заменить на

 

		foreach( $data as $field => $_data )
		{
			/* CONTENT ONLY */
			if ( $field == 'noPreview' AND $_data == 0 )
			{
				IPSSearchRegistry::set( 'opt.noPostPreview', false );
			}

			/* CONTENT ONLY */
			if ( $field == 'contentOnly' AND $_data == 1 )
			{
				IPSSearchRegistry::set( 'opt.onlySearchPosts', true );
			}

			/* POST COUNT */
			if ( $field == 'pCount' AND intval( $_data ) > 0 )
			{
				$return[] = array( 'column' => 't.posts', 'operator' => '>=', 'value' => intval( $_data ) );
			}

			/* TOPIC VIEWS */
			if ( $field == 'pViews' AND intval( $_data ) > 0 )
			{
				$return[] = array( 'column' => 't.views', 'operator' => '>=', 'value' => intval( $_data ) );
			}
		}

 

Открыть /admin/applications/members/extensions/search/engines/sql.php

 

Найти

			if ( $field == 'searchInKey' AND $_data['searchInKey'] == 'members' )

Заменить на

 

			if ( $field == 'searchInKey' AND $_data == 'members' )

  • Автор

Спасибо! Как всегда всё чётко и оперативно :)

Если не сложно, что мы убрали из кода?

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.