Ошибка Unknown column

Форум для решения проблем в работе движка версии 3.0.
Ответить
Алкаш
Сообщения: 76
Зарегистрирован: 16.02.14 12:52

Алкаш » 16.11.15 02:06

Всем привет!
Появилась ошибка, не знаю с чем связана в подписке в профиле по адресу:
/ucp.php?i=main&mode=subscribed
Может ли это быть следствием установки мода Закладки для сообщений - Posts Bookmarking? Или совпадение?

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

Общая ошибка
SQL ERROR [ mysql4 ]

Unknown column 'i.post_id' in 'where clause' [1054]

SQL

SELECT COUNT(t.topic_id) as topics_count FROM (bb_topics_watch i CROSS JOIN bb_topics t) WHERE i.post_id = 0 AND i.topic_id = t.topic_id AND i.user_id = 2 AND 1=1

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()

FILE: [ROOT]/includes/db/mysql.php
LINE: 193
CALL: dbal->sql_error()

FILE: [ROOT]/includes/ucp/ucp_main.php
LINE: 820
CALL: dbal_mysql->sql_query()

FILE: [ROOT]/includes/ucp/ucp_main.php
LINE: 366
CALL: ucp_main->assign_topiclist()

FILE: [ROOT]/includes/functions_module.php
LINE: 507
CALL: ucp_main->main()

FILE: [ROOT]/ucp.php
LINE: 338
CALL: p_master->load_active()

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 16.11.15 07:53

Ага, в TOPICS_WATCH_TABLE нет post_id, есть в BOOKMARKS_TABLE, где модом добавлено поле post_id. Shredder исправит за 10 секунд.

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 16.11.15 08:59

В /includes/ucp/ucp_main.php Найти:

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

		$sql_array = array(
			'SELECT'	=> 'COUNT(t.topic_id) as topics_count',

Добавить перед:

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

		$pb_sql = ($mode == 'bookmarks') ? 'i.post_id = 0 AND' : '';

Далее найти:

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

			'WHERE'		=>	'i.post_id = 0
				AND i.topic_id = t.topic_id

Заменить на:

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

			'WHERE'		=>	$pb_sql . '
				i.topic_id = t.topic_id

Тут же нашёл и ещё 1 баг: ссылка "Подписаться на тему" при просмотре тем ведёт куда-то не туда. Буду разбираться)

Добавлено спустя 25 минут 31 секунду:
Оказалось, что баг со ссылкой не связан с модом. Видимо, был связан с каким-то из хуков, т.к. при полной замене файлов phpBB на чистый движок - баг оставался на месте, помогло только удаление всех файлов и перезалив.

Добавлено спустя 33 минуты 30 секунд:
Причина бага со ссылкой выяснена и устранена, см. тут: Канонические страницы - phpBB Canonical URL & Topic SEO hook
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Алкаш
Сообщения: 76
Зарегистрирован: 16.02.14 12:52

Алкаш » 16.11.15 11:04

Shredder, а в каком файле делать правки?? Я понимаю, вы с Серегой гуру, вам это как 2 пальца об асфальт, я же на уровне копипасты моды ставлю! :lol: :lol:

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 16.11.15 11:09

Пардон :lol: У тебя это в /includes/ucp/ucp_main.php в районе строк 808 и 814.

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 16.11.15 11:33

c61 писал(а):У тебя это в /includes/ucp/ucp_main.php

Да, что-то я тупанул... Сказывается, что больше суток не спал. :lol:
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Алкаш
Сообщения: 76
Зарегистрирован: 16.02.14 12:52

Алкаш » 16.11.15 11:45

Спасибо, товарищи, все заработало!! :)

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 16.11.15 11:53

Пожалуйста. Приходи ещё :D
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Ответить