sql error 1064 in search.php

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
Bine24
Mitglied
Beiträge: 93
Registriert: 10.09.2005 21:42
Wohnort: Oberursel
Kontaktdaten:

sql error 1064 in search.php

Beitrag von Bine24 »

Hallo,

ich habe bestimmt eine Stunde gesucht, aber keiner scheint denselben Fehler zu haben :(
Wenn ich einen Begriff suche, erscheint folgender sql-error:

Code: Alles auswählen

Allgemeiner Fehler
Could not obtain matched posts list

DEBUG MODE

SQL Error : 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 'WHERE w.word_text LIKE 'evolve' AND m.word_id = w.wor

SELECT m.post_id FROM WHERE w.word_text LIKE 'evolve' AND m.word_id = w.word_id AND w.word_common <> 1

Line : 317
File : search.php
Die sql-Tabelle habe ich kontrolliert. Die funktioniert. Ich kenne mich leider nicht so gut mit php aus, als dass ich feststellen könnte, ob vielleicht ein Semikolon zuviel oder ein Kommata zu wenig ist...

Hier Zeile 290-320 aus der search.php:

Code: Alles auswählen

}

						if ( !strstr($multibyte_charset, $lang['ENCODING']) )
						{
							$match_word = str_replace('*', '%', $split_search[$i]);
							$search_msg_only .= ($only_bluecards) ? " AND p.post_bluecard>0 AND m.post_id=p.post_id " : "";
							$sql = "SELECT m.post_id 
								FROM" . (($only_bluecards) ? ','.POSTS_TABLE . ' p ' : '') . "
								
								WHERE w.word_text LIKE '$match_word' 
									AND m.word_id = w.word_id 
									AND w.word_common <> 1 
									$search_msg_only";
						}
						else
						{
							$match_word =  addslashes('%' . str_replace('*', '', $split_search[$i]) . '%');
						$search_msg_only = ( $search_fields ) ? "OR pt.post_subject LIKE '$match_word'" : ''; 
$search_msg_only .= ($only_bluecards) ? " AND p.post_bluecard>0 AND pt.post_id=p.post_id " : ""; 
                     $sql = "SELECT pt.post_id 
                        FROM " . POSTS_TEXT_TABLE . "
 pt " . (($only_bluecards) ? ','.POSTS_TABLE . ' p ' : '') . "
                        WHERE pt.post_text LIKE '$match_word
								$search_msg_only";
						}
						if ( !($result = $db->sql_query($sql)) )
						{
							message_die(GENERAL_ERROR, 'Could not obtain matched posts list', '', __LINE__, __FILE__, $sql);
						}

						$row = array();
Ich hatte zuvor den Yellow Card Mod eingebaut.
Wäre recht dankbar für schnelle Hilfe :wink:
Liebe Grüße,
Fabi

Mein Forum
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Re: sql error 1064 in search.php

Beitrag von easygo »

Bine24 hat geschrieben:SELECT m.post_id FROM ? WHERE w.word_text LIKE 'evolve' AND m.word_id = w.word_id AND w.word_common <> 1
So wie das aussieht, fehlt dir da ein bisschen was. Ersetz die Zeile -->

Code: Alles auswählen

FROM" . (($only_bluecards) ? ','.POSTS_TABLE . ' p ' : '') . "
einfach mal durch die -->

Code: Alles auswählen

FROM " . SEARCH_WORD_TABLE . " w, " . SEARCH_MATCH_TABLE . " m " . (($only_bluecards) ? ','.POSTS_TABLE . ' p ' : '') . "
und wenn du Glück hast, wars das schon. easy
Benutzeravatar
Bine24
Mitglied
Beiträge: 93
Registriert: 10.09.2005 21:42
Wohnort: Oberursel
Kontaktdaten:

Re: sql error 1064 in search.php

Beitrag von Bine24 »

easygo hat geschrieben: und wenn du Glück hast, wars das schon. easy
Tatsächlich, das war es schon :D Ich danke dir!!!
Liebe Grüße,
Fabi

Mein Forum
Antworten

Zurück zu „phpBB 2.0: Mod Support“