Seite 1 von 1

SQL-Fehler in Mitgliederliste nach Serverumzug

Verfasst: 11.11.2006 18:57
von chybo
Liebe Leute, ich hab ein wirklich kleines Problem und ich hoffe, es kann mir jemand helfen.

Gestern haben wir eins unserer Foren auf einen neuen Server umgezogen. Alles klappt wunderprächtig, es wurde aber auch wirklich (fast) alles einwandfrei mitgenommen.
Bis auf die Mitgliederliste :(

Folgende Fehlermeldung erscheint:

Code: Alles auswählen

Could not query users

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 'user_level <> 1 ORDER BY user_regdate ASC LIMIT 0, 25' at line 3

SELECT username, user_knowledge, user_absence, user_absence_mode, user_id, user_viewemail, user_posts, user_regdate, user_lastlogon, user_allow_viewonline, user_from, user_ebay, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar FROM supra_users WHERE user_id <> -1AND user_level <> 1 ORDER BY user_regdate ASC LIMIT 0, 25

Line : 191
File : .../supra4ever/httpdocs/memberlist.php
Ich habe einen Mod eingebaut, dass Gäste die Mitgliederliste nicht einsehen können. Der betreffende Part in der memberlist.php sieht also folgendermassen aus:

Code: Alles auswählen

$verify = get_verify_user();
$sql = "SELECT username, user_knowledge, user_absence, user_absence_mode, user_id, user_viewemail, user_posts, user_regdate, user_lastlogon, user_allow_viewonline, user_from, user_ebay, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar 
	FROM " . USERS_TABLE . "
	WHERE user_id <> " . ANONYMOUS . "AND user_level <> " . ADMIN . "
	ORDER BY $order_by";
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}
Da es auf dem alten Server funktionierte, kann ich mir den Fehler absolut nicht erklären und ich hoffe auf eure Hilfe und Lösungsvorschläge.

Habe mich hier schon ein wenig belesen, bin aber zu keinem Ergebnis gekommen... ich möchte - eben wegen diverser Mods - auch nicht die Originaldateien aufspielen.

Danke schon mal vorab und Grüssle

Katja

EDIT:

Datenbank alt:
Serverversion 4.0.27
PHP-Version 4.3.10-200.schlund.1

Datenbank neu:
Serverversion 4.1.13
PHP-Version 5.0.5

Vielleicht ist das noch von Relevanz?

Verfasst: 11.11.2006 19:19
von Miriam
Ich kann mir nicht vorstellen, dass das vorher geklappt hat... Aber Gut.

Ändere den Code Deiner Abfrage hier --->

Code: Alles auswählen

WHERE user_id <> " . ANONYMOUS . "AND user_level <> " . ADMIN . "
in

Code: Alles auswählen

WHERE user_id <> " . ANONYMOUS . " AND user_level <> " . ADMIN . "
Aber wieso machst Du es so kompliziert?
Gäste sind nicht eingeloggte User. Wieso nutzt Du also nicht die Funktionen des phpBB um das zu regeln? Andererseits: Vllt macht es die function get_verify_user() genau so. :)

Verfasst: 11.11.2006 19:35
von chybo
Wenn ich doch sage... es hat 2 Jahre lang funktioniert :roll:

Ich danke Dir recht herzlich für Deine prompte Lösung, es funzt :grin:

Warum ich es so kompliziert mache? Weil ich ein PHP-Dau bin und hier nur nach genauer Anleitung und Anweisung handeln kann. Ich hab null Plan, was ich da eigentlich mache :D
Aber wer lesen kann... :wink:

Vielen Dank nochmal

Grüssle

Katja