Fehler in der Suchfunktion der linkdb

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Benutzeravatar
WileCoyote
Beiträge: 47
Registriert: Mi 26.Apr, 2006 04:42
Wohnort: Österreich
Kontaktdaten:

Fehler in der Suchfunktion der linkdb

Beitrag von WileCoyote »

Hallo Oxpus Community, ich habe mir mal anstatt des Advanced Links Mod die linkdb v0.0.9 angsehen, die anscheinend die Nachfolge vom Advanced Links Mod sein soll. Bis auf die Suche funktioniert auch alles ganz gut. Der Fehler ist wieder in einem SQL Statement zu suchen, womit ich mich leider nicht auskenne. Kann mir bitte jemand helfen? Nachfolgend SQL Statement und Fehlercode:

SQL Statement:

Code: Alles auswählen

						$sql = "SELECT f1.*, AVG(r.rate_point) AS rating, COUNT(r.votes_link) AS total_votes, u.user_id, u.username, c.cat_id, c.cat_name, COUNT(DISTINCT cm.comments_id) AS total_comments
							FROM " . LINKS_TABLE . " AS f1, " . LINK_CATEGORIES_TABLE . " AS c
								LEFT JOIN " . LINK_VOTES_TABLE . " AS r ON f1.link_id = r.votes_link
								LEFT JOIN ". USERS_TABLE ." AS u ON f1.user_id = u.user_id
								LEFT JOIN " . LINK_COMMENTS_TABLE . " AS cm ON f1.link_id = cm.link_id
							WHERE f1.link_id IN ($search_results) 
							AND c.cat_id = f1.link_catid
							AND f1.link_approved = '1' 
							GROUP BY f1.link_id 
							ORDER BY $sort_method $sort_order 
							LIMIT $limit_sql";
Fehlercode:

Code: Alles auswählen

Could not obtain search results

DEBUG MODE

SQL Error : 1054 Unknown column 'f1.link_id' in 'on clause'

SELECT f1.*, AVG(r.rate_point) AS rating, COUNT(r.votes_link) AS total_votes, u.user_id, u.username, c.cat_id, c.cat_name, COUNT(DISTINCT cm.comments_id) AS total_comments FROM phpbb_links AS f1, phpbb_link_categories AS c LEFT JOIN phpbb_link_votes AS r ON f1.link_id = r.votes_link LEFT JOIN phpbb_users AS u ON f1.user_id = u.user_id LEFT JOIN phpbb_link_comments AS cm ON f1.link_id = cm.link_id WHERE f1.link_id IN (2) AND c.cat_id = f1.link_catid AND f1.link_approved = '1' GROUP BY f1.link_id ORDER BY link_time DESC LIMIT 10

Line : 485
File : link_search.php
Vielen Dank im Voraus
WileCoyote

PS.: Ich habe mich mit dem Problem an euch gewandt, da der Mod Autor schon seit September 2005 auf phpbb.com nicht mehr auf Fragen antwortet.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Unknown column 'f1.link_id' in 'on clause'
Das bedeutet, daß das Feld link_id schlicht in der Tabelle fehlt.
Vielleicht nicht korrekt installiert?
Also in der Tabelle phpbb_links muss das Feld vorkommen, sonst läuft diese Abfrage hier eben auf Fehler...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
WileCoyote
Beiträge: 47
Registriert: Mi 26.Apr, 2006 04:42
Wohnort: Österreich
Kontaktdaten:

Beitrag von WileCoyote »

Danke für die schnelle Antwort. Das Feld und alle anderen die abgefragt werden, sind definitiv in den Tabellen vorhanden. Soweit ich das beurteilen kann, liegt das Problem in der FROM Zeile und den AS f1, AS c usw... Definitionen. Da passt irgend etwas nicht zusammen. Leider haben aber meine Stundenlangen Versuche das Problem zu lösen zu nichts geführt ^^.

lg,
WileCoyote
Benutzeravatar
robotik
Beiträge: 21
Registriert: Sa 15.Apr, 2006 22:41

Fehler gefunden?

Beitrag von robotik »

Hat schon jemand den Fehler gefunden?
Benutzeravatar
robotik
Beiträge: 21
Registriert: Sa 15.Apr, 2006 22:41

Fehler behoben

Beitrag von robotik »

Ich bin zwar ein blutiger Anfänger aber ich habe die Lösung.

Code: Alles auswählen

Öffne 
linkdb/modules/link_search.php

Suche 2x nach 
FROM " . LINKS_TABLE . " AS f1, " . LINK_CATEGORIES_TABLE . " AS c

Ersetze mit
FROM (" . LINKS_TABLE . " AS f1, " . LINK_CATEGORIES_TABLE . " AS c)
Ich hoffe das ist alles so richtig.
Antworten