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

"Последние актиыные темы" не работает в MySQL 5.0.

Ответы на вопросы, связанные с модами для phpBB 2.0.x, кроме относящихся к форуму Для авторов (phpBB 2.0.x).
Аватара пользователя
Синдеев Михаил
phpBB 1.0.0
Сообщения: 3
Стаж: 18 лет 6 месяцев

"Последние актиыные темы" не работает в MySQL 5.0.

Сообщение Синдеев Михаил »

PhpMyAdmin писал(а):Ошибка

SQL-запрос:


SELECT from_unixtime( p.post_time, '%d.%m.%y %H:%i:%s' ) AS topic_time, f.forum_name AS forum_name, f.forum_id AS forum_id, u.username AS username, u2.username AS username2, u2.user_id AS user_id2, p.poster_id AS poster_id, p.post_username AS post_username, p.post_id AS post_id, t. * , p.post_time AS post_time
FROM phpbb_topics t, phpbb_posts p
LEFT OUTER JOIN phpbb_forums f ON p.forum_id = f.forum_id
LEFT OUTER JOIN phpbb_users u ON p.poster_id = u.user_id
LEFT OUTER JOIN phpbb_users u2 ON u2.user_id = t.topic_poster
WHERE t.topic_id
IN ( 4882, 4934, 5113, 5242, 5506, 6145, 6797, 7024, 9183, 10394, 10518, 11427, 12479, 12494, 13007, 13048, 13702, 13781, 15184, 16899, 17601, 17698, 18207, 18489, 18604, 20032, 20807, 21329, 21401, 21863, 21934, 21936, 21989, 22309, 23712, 24109, 24168, 24368, 24661, 25223, 25362, 25464, 25531, 25676, 26244, 26251, 26751, 27087, 27151, 27289, 27546, 27566, 28283, 28928, 28988, 29472, 29668, 29931, 29950, 29968, 30290, 30738, 31140, 31268, 31532, 31683, 31764, 31819, 31880, 31910, 31999, 32047, 32294, 32547, 32561, 32649, 32729, 33009, 33014, 33065, 33135, 33139, 33205, 33217, 33222, 33230, 33254, 33291, 33293, 33299, 33312, 33313, 33320, 33331, 33358, 33373, 33377, 33401, 33408, 33410, 33436, 33440, 33446, 33468, 33473, 33505, 33520, 33526, 33562, 33573, 33583, 33593, 33595, 33599, 33604, 33636, 33645, 33650, 33653, 33662, 33673, 33684, 33690, 33707, 33716, 33722, 33726, 33727, 33733, 33743, 33749, 33751, 33754, 33757, 33759, 33764, 33768, 33781, 33783, 33789, 33794, 33800, 33801, 33813, 33814, 33815, 33824, 33831, 33832, 33863, 33871, 33873, 33876, 33879, 33886, 33916, 33921, 33924, 33951, 33952, 33953, 33956, 33958, 33960, 33961, 33962, 33963, 33964, 33965, 33967, 33968, 33971, 33972, 33973, 33974, 33976, 33977, 33978, 33979, 33981, 33982, 33983, 33984, 33985, 33986, 33987, 33988, 33989, 33990, 33991, 33992, 33993, 33994, 33996, 33997, 33998, 33999, 34000, 34001, 34002, 34004, 34005, 34006, 34007, 34009, 34012, 34016, 34017, 34018, 34019, 34020, 34021, 34022, 34023, 34024, 34025, 34026, 34027, 34032, 34034, 34038, 34039, 34041, 34042, 34044, 34048, 34049, 34050, 34051, 34052, 34053, 34054, 34055, 34056, 34057, 34058, 34059, 34060, 34061, 34064, 34065, 34066, 34067, 34068, 34069, 34070, 34071, 34072, 34075, 34076, 34077, 34078, 34079, 34080, 34081, 34082, 34083, 34084, 34085, 34086, 34088, 34089, 34090, 34092, 34093, 34094, 34095, 34096, 34097, 34098, 34099, 34100, 34101, 34102, 34103, 34104, 34105, 34106, 34109, 34110, 34111, 34112, 34113, 34114, 34115, 34116, 34117, 34118, 34119, 34120, 34121, 34122, 34123, 34124, 34125, 34126, 34127, 34128, 34129, 34131, 34132, 34133, 34135, 34136, 34137, 34138, 34139, 34140, 34141, 34142, 34143, 34144, 34145, 34146, 34148, 34149, 34150, 34151, 34152, 34153, 34154, 34155, 34156, 34157, 34158, 34159, 34160, 34161, 34162, 34163, 34164, 34165, 34166, 34167, 34168, 34169, 34170, 34171, 34172, 34173, 34174, 34175, 34176, 34177, 34178, 34179, 34180, 34185, 34186, 34187, 34188, 34189, 34190, 34191, 34192, 34193, 34194, 34195, 34196, 34198, 34199, 34200, 34201, 34202, 34203, 34204, 34205, 34209, 34210, 34211, 34212, 34213, 34214, 34215, 34216, 34217, 34218, 34220, 34221, 34222, 34223, 34224, 34225, 34226, 34227 )
AND p.post_id = t.topic_last_post_id
AND UNIX_TIMESTAMP( NOW( ) ) - p.post_time <86400
ORDER BY p.post_time DESC
LIMIT 0 , 50

Ответ MySQL:
#1054 - Unknown column 't.topic_poster' in 'on clause'
Не пойму что здесь не так. Само поле в таблице есть, на которое ругается.
Помогите, кто может ...

Добавлено спустя 1 минуту 8 секунд:

правильная тема: "Последние актиыные темы" не работает в MySQL 5.0.20

Добавлено спустя 9 минут 10 секунд:

Забыл сказать, что до этого стоял mysql 4.1 и все работало
Аватара пользователя
Синдеев Михаил
phpBB 1.0.0
Сообщения: 3
Стаж: 18 лет 6 месяцев

Сообщение Синдеев Михаил »

в общем решение нашел сам

SELECT ...
FROM phpbb_topics t LEFT JOIN phpbb_posts p ON p.post_id = t.topic_last_post_id
LEFT OUTER JOIN phpbb_forums f ON p.forum_id = f.forum_id
LEFT OUTER JOIN phpbb_users u ON p.poster_id = u.user_id
LEFT OUTER JOIN phpbb_users u2 ON u2.user_id = t.topic_poster
WHERE t.topic_id...
AND UNIX_TIMESTAMP( NOW( ) ) - p.post_time <86400
ORDER BY p.post_time DESC
LIMIT 0 , 50
Может кому понадобится...
CHiiEF
phpBB 1.0.0
Сообщения: 3
Стаж: 16 лет 5 месяцев

Сообщение CHiiEF »

Синдеев Михаил
Такая корректировка запроса приводит к отсутствию сообщения об ошибке, а не к решению проблемы, поскольку результирующие данные не совпадают с тем, что этот запрос должен был возвращать в оригинале.

Навскидку лучше переписать следующим образом (это код который нужно внести вместо существующего непосредственно в файле recent.php)

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

$sql_start = "SELECT t.*, p.poster_id, p.post_username AS last_poster_name, p.post_id, p.post_time, f.forum_name, f.forum_id, u.username AS last_poster, u.user_id AS last_poster_id, u2.username AS first_poster, u2.user_id AS first_poster_id, p2.post_username AS first_poster_name
   FROM ". TOPICS_TABLE ." t
		LEFT OUTER JOIN ". POSTS_TABLE ." p ON p.post_id = t.topic_last_post_id
		LEFT OUTER JOIN ". POSTS_TABLE ." p2 ON p2.post_id = t.topic_first_post_id
		LEFT OUTER JOIN ". FORUMS_TABLE ." f ON p.forum_id = f.forum_id
		LEFT OUTER JOIN ". USERS_TABLE ." u ON p.poster_id = u.user_id
		LEFT OUTER JOIN ". USERS_TABLE ." u2 ON u2.user_id = t.topic_poster
   WHERE $where_forums AND p.post_id = t.topic_last_post_id AND ";
В нашем садике учат ЗК тематике ;-)

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