Seite 1 von 1

Last_visit Mod, Sessions.php Fehler

Verfasst: 29.02.2004 05:36
von |-=DgH=-|Phil
:( hiho @ all

also ich hab mir jetzt den last visit mod eingebaut! Doch bei der sessions.php scheiterts dann!

es erfolgt dieser Fehler hier:

Code: Alles auswählen

phpBB : Kritischer Fehler

Error doing DB query userdata row fetch

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near '' AND session_time > 1078025283' at line 4

SELECT u.*, s.* FROM newsite_sessions s, newsite_users u WHERE s.session_id = '1c8810262093fec89b2b1ad60322c85f' AND u.user_id = s.session_user_id' AND session_time > 1078025283

Line : 239
File : /www/htdocs/v086851/board/includes/sessions.php


das hier ist meine sessions.php an der kritischen Stelle!

Code: Alles auswählen

// End add - Last visit MOD
		//
		// session_id exists so go ahead and attempt to grab all
		// data in preparation
		//
		$sql = "SELECT u.*, s.*
			FROM " . SESSIONS_TABLE . " s, " . USERS_TABLE . " u
			WHERE s.session_id = '$session_id'
				AND u.user_id = s.session_user_id'
				AND session_time > $expiry_time";
		if ( !($result = $db->sql_query($sql)) )
		{
			message_die(CRITICAL_ERROR, 'Error doing DB query userdata row fetch', '', __LINE__, __FILE__, $sql);
		}

		$userdata = $db->sql_fetchrow($result);

		//
		// Did the session exist in the DB?
		//
		if ( isset($userdata['user_id']) )
		{
so sieht sie aus wenn ich nach Anleitung zum Mod gehe, zumindest habe ich diese Anleitung so interpretiert! Aber dann kommt der Fehler!
Ok, jetzt hab ich schon getestet, wenn ich diese Zeile hier:

Code: Alles auswählen

AND session_time > $expiry_time"
auskommentiere, dann geht mein Board, aber der Mod geht dann nicht! :-?

kann mir einer weiter helfen?

Verfasst: 01.03.2004 15:42
von Acid
WHERE s.session_id = '$session_id'
AND u.user_id = s.session_user_id'
AND session_time > $expiry_time";
..lösche mal das rotmarkierte Anführungszeichen.

Verfasst: 05.03.2004 12:00
von Praios
Ich hab mir das gleiche Mod eingebaut und auch bei mir steckt offenbar ein Fehler in der sessions.php - aber an anderer Stelle.

Ich bekomme einen "Parse Error" in Zeile 168 gemeldet.

Die entsprechende Zeile im Code lautet:

Code: Alles auswählen

$userdata['user_lastvisit'] = $last_visit, user_lastlogon = " . time() .  ", user_totallogon=user_totallogon+1;
Außerdem meckert er über einen "Call to undefined function:session_pagestart()" in der index.php Zeile 31.

Der Code hier:

Code: Alles auswählen

$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
Ich kann zwar keinen Strich PHP, aber wahrscheinlich ist das eine Folge aus dem erstgenannten Fehler...?

Verfasst: 06.03.2004 11:38
von Acid
Ein Parse Error ist oftmals nicht in der angegebenen Zeile zu finden. Speichere daher mal die sessions.php als *.txt ab und poste einen Link.
Der andere Fehler ist sicherlich nur ein Folgefehler vom ersten Fehler.

Verfasst: 06.03.2004 12:51
von Praios
Danke für das Hilfsangebot, aber ich bin gestern in einer kleinen Nachtsitzung das komplette Mod nochmal zeilenweise durchgegangen:
EasyMod hatte bei der Installation zwei Befehlzeilen schlichtweg nicht reingeschrieben und dafür in der lang_main.php den kompletten Eintrag doppel eingefügt (wobei letzteres natürlich nichts mit dem genannten Fehler zu tun hat). :-?

Es geht doch nichts über Handarbeit, denn jetzt läuft's fast einwandfrei. Lediglich der Counter für die Seitenzugriffe reagiert manchmal nicht. Aber der ist mir sowieso nicht so wichtig, so daß ich ihn einfach in der profile_view_body.tpl rauskommentiert habe.