Страница 14 из 30

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 27.08.2017 1:33
rxu
Evangelion, а сейчас видно?

Отправлено спустя 3 минуты 58 секунд:
Sheer, не похоже.Действие удалил, зашел под гостем, вижу.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 27.08.2017 1:38
Evangelion
rxu писал(а): 27.08.2017 1:37Evangelion, а сейчас видно?
Видно всё равно

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 14.09.2017 19:55
nissin
Довольно специфическая ошибка, но имеет место быть.
Преамбула, в таблицу phpbb_users в конец было добавлено поле 'id' без префикса. Кем и зачем это было сделано - тайна покрытая мраком.
Диагноз пациента - не грузятся аватары пользователей.
Отладка привела к файлу phpbb/avatar/manager.php

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

	static public function clean_row($row, $prefix = '')
	{
		// Upon creation of a user/group $row might be empty
		if (empty($row))
		{
			return self::$default_row;
		}

		$output = array();
		foreach ($row as $key => $value)
		{
			$key = preg_replace("#^(?:{$prefix}_)#", '', $key);
			$output[$key] = $value;
		}

		if ($prefix === 'group' && isset($output['id']))
		{
			$output['id'] = 'g' . $output['id'];
		}

		return $output;
	}
Вроде всё ок, вырезаются префиксы у полей. Но поле 'id' без префикса перекрывает значение 'user_id'.
Я проблему решил, воткнув костыли в эту функцию. Но вдруг кто-то тоже нарвётся.
Проблема возникла в версии 3.1, но в 3.2 используется аналогичный код.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 14.09.2017 20:04
rxu
Так здесь отлавливается group_id, судя по коду, или я чего-то путаю,

Отправлено спустя 2 минуты 29 секунд:
А, понятно. Там всё отлавливается, но для group_id делается особый вывод.
Смутно представляю, как этот момент исправить. теоретически, можно добавить любое поле без префикса, типа avatar, которое потом перекроет user_avatar, например.
Решение такое - не надо добавлять поля без префиксов :roll:

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 15.09.2017 13:55
nissin
По факту перекрывалось user_id полем id без префикса.
В отладке выглядело так: в функцию clean_row передали row с нормальным user_id, в ответ получили массив с пустым id.
Сегодня не без проблем, но вынесли из БД поле id без префикса.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 15.09.2017 14:19
Mr. Anderson
nissin, фишка/проблема, конечно, общая, но вообще-то формально там 3.1.х, а не 3.2.х :)

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 15.09.2017 14:41
rxu
Универсально решить проблему практически невозможно, если только не выкинуть из выходного массива все поля без префикса.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 15.09.2017 17:55
nissin
rxu, ну вообще-то можно просто не вырезать префиксы. Оно конечно красиво, но возможны глюки.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 15.09.2017 19:05
rxu
Ну из зачем-то решили вырезать ведь. Поэтому не вырезать - такой ПР явно не пройдет. Иначе эта функция нафиг не нужна.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 16.09.2017 14:59
morfius
Здравствуйте. Столкнулся с ошибкой installer.install_database.set_up_database в процессе установки форума phpbb 3.2.1, сразу после ввода данных от БД. Обратился по данной ошибке к своему хостеру, тем самым они воспроизвели данную ошибку, но так же посмотрели логи, но нечего не обнаружили по данной ошибке.
О Хостинге 
Apache/2.4.10 (Debian), php 5.6.30, mysql 5.5.57, если нужны ещё какие-то данные, дайте знать.
Благодарю за внимание.

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 16.09.2017 15:37
Mr. Anderson
morfius писал(а): 16.09.2017 14:59Столкнулся с ошибкой installer.install_database.set_up_database
А в чем ошибка-то? Можно побольше подробностей? :?

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 16.09.2017 16:06
morfius
Mr. Anderson писал(а): 16.09.2017 15:37А в чем ошибка-то? Можно побольше подробностей?
В процессе установки данного форума, я раньше подобного не встречал просто. А сейчас столкнулся, естественно, что за installer.install_database.set_up_database я без понятия, плохо это или нет. Кстати, нашёл "это" сейчас и на https://tracker.phpbb.com/browse/PHPBB3-15039

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 16.09.2017 17:51
rxu
Повторю вопрос: в чем ошибка? С чего вы решили, что "это" - вообще ошибка? Что такое "это"?

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 16.09.2017 19:40
nissin
Пока не забыл. При использовании поискового движка сфинкса в phpBB не делается экранирование символов.
Нужно в файле phpbb/search/fulltext_sphinx.php
Найти все вхождения (всего 4):

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

$result = $this->sphinx->Query($search_query_prefix . str_replace('"', '"', $this->search_query), $this->indexes);
Заменить на:

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

$result = $this->sphinx->Query($search_query_prefix . $this->sphinx->EscapeString(str_replace('"', '"', $this->search_query)), $this->indexes);

Re: Сообщаем об ошибках phpBB 3.2.x разработчикам

Добавлено: 16.09.2017 19:53
rxu
nissin писал(а): 16.09.2017 19:40Пока не забыл
https://github.com/phpbb/phpbb/pull/4960