PDA

Zobacz pełną wersję : phpbb.searchbot przestał działać



sido
18-05-2007, 11:49
Wczoraj zauważyłem, że phpbb.searchbot nie przeszukuje mi forum :'(
Jeszcze jakiś czas temu bez problemu z poziomu joomli mogłem przeszukać posty na forum i nie było żadnych problemów, a teraz widzę, że wyszukuje mi tylko treść z joomli.

Nie mam pojęcia o co chodzi, ale podejrzewam, że jest to problem z MySQL'em ver 5.
Czy ktoś poprawił zapytanie, tak aby działało na Mysql 5? Bo ja nie wiem co może być tu niekompatybilne z Mysql 5.0... podejrzewam że chodzi o " INNER JOIN"...



$query = "SELECT d.topic_title AS title,"
. "\n a.post_text AS text,"
. "\n FROM_UNIXTIME(b.post_time) AS created,"
. "\n CONCAT_WS( ' / ', c.forum_name, d.topic_title ) AS section,"
. "\n '0' AS browsernav,"
. "\n CONCAT('/forum/', 'viewtopic.php?t=', b.topic_id) AS href"
. "\n FROM $phpbb_db.phpbb_posts_text AS a"
. "\n INNER JOIN $phpbb_db.phpbb_posts AS b, $phpbb_db.phpbb_forums AS c, $phpbb_db.phpbb_topics AS d ON a.post_id = b.post_id AND b.topic_id = d.topic_id AND b.forum_id = c.forum_id"
. "\n WHERE (($where) AND " . $auth . ")"
. "\n ORDER BY $order"
;

mam hosting w home.pl (niedawno przechodzili na php5 ale ja mam PHP Version 4.4.6, MySQL 5.0.33).
Adres do strony: http://www.callofduty.pl

sido
05-06-2007, 14:41
Żeby było czytelniej zamieszczam samo zapytanie SQL (bez PHP):


SELECT d.topic_title AS title, a.post_text AS text, FROM_UNIXTIME(b.post_time) AS created, CONCAT_WS( ' / ', c.forum_name, d.topic_title ) AS section, '0' AS browsernav, CONCAT('/forum/', 'viewtopic.php?t=', b.topic_id) AS href
FROM phpbb_posts_text AS a
INNER JOIN phpbb_posts AS b, phpbb_forums AS c, phpbb_topics AS d ON a.post_id = b.post_id AND b.topic_id = d.topic_id AND b.forum_id = c.forum_id
WHERE ((LOWER(a.post_subject) LIKE '%call of duty 4%') OR (LOWER(a.post_text) LIKE '%call of duty 4%') OR (LOWER(CONCAT(c.forum_name, d.topic_title )) LIKE '%call of duty 4%'))
ORDER BY b.post_time DESC

A po wykonaniu tego zapytania otrzymuję błąd:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ON a.post_id = b.post_id AND b.topic_id = d.topic_id AND b.forum_id = c.forum_id' at line 1