Seite 1 von 1

Last visit sql error: 1064

Verfasst: 24.11.2005 10:14
von miki
Hi,
Ich habe gestern den Mod eingebaut und Schwierigkeiten mit der sessions.php gehabt. Die habe ich dann komplett runtergeladen (sessions_133.zip) und siehe da, es funktioniert anscheinend. Ab und an bekomme ich allerdings folgende Fehlermeldung, nach ganz unterschiedlichen Aktionen:

Code: Alles auswählen

phpBB : Critical Error 

Error clearing sessions table

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near '' AND session_id <> 'b452dfc080ebd23592f8f2f7a279d46e'' at line 2

DELETE FROM phpbb_sessions WHERE UNIX_TIMESTAMP() - session_time >=172800' AND session_id <> 'b452dfc080ebd23592f8f2f7a279d46e'

Line : 483
File : sessions.php 
Die Datenbankänderung habe ich gemäß Anleitung durchgeführt. Ähnliche Fehlermeldungen wurden hier schon diskutiert, aber ich habe leider nix gefunden, was hilft. Der Code in der sessions.php an der betreffenden Stelle sieht folgendermaßen aus:

Code: Alles auswählen

/**
* Removes expired sessions and auto-login keys from the database
*/
function session_clean($session_id)
{
	global $board_config, $db;

	//
	// Delete expired sessions
	//
	$sql = "DELETE FROM " . SESSIONS_TABLE . " 
		WHERE UNIX_TIMESTAMP() - session_time >=172800'  
			AND session_id <> '$session_id'";
	if ( !$db->sql_query($sql) )
	{
		message_die(CRITICAL_ERROR, 'Error clearing sessions table', '', __LINE__, __FILE__, $sql);
	}

Line 483 ist die -> message_die... . Fällt jemandem irgendwas auf was den Fehler ausgelöst hat, oder wo soll ich weitersuchen?
Vielen Dank
miki

P.S.: Ich hab´ gerade festgestellt, das nach Drücken des Refresh-Buttons die Fehlermeldung verschwindet und die angeforderte Seite erscheint. Woran kann das liegen?

Verfasst: 24.11.2005 11:49
von Markus67

Verfasst: 24.11.2005 12:34
von miki
Danke Markus,
allerdings habe ich den Mod erst installiert als 2.0.18 schon drauf war.

Ich habe aber folgenden Unterschied im Code feststellen können:
In der komplett heruntergeladenen sessions.php ist ein ' mehr als im angegebenen Beitrag, und zwar am Ende folgender Zeile.

Code: Alles auswählen

WHERE UNIX_TIMESTAMP() - session_time >=172800'
Ich habe das ' jetzt gelöscht, kann es daran gelegen haben?

Anscheinend ist der Fehler jetzt behoben, falls also noch jemand mit der fertigen 2.0.18 sessions.php von Niels den gleichen Fehler hat, kann er das mal überprüfen.

Besten Dank
miki