Seite 1 von 1

nach login zurück zum thread

Verfasst: 21.04.2005 14:45
von vsitor
hallo,

ich habe folgendes problem.
wenn ein nicht eingeloggter user auf einem thread antworten will, dann auf antworten drückt, wird er zum log-in weitergeleitet.
wenn der user nun eingeloggt ist, muss er wieder mühsam zum thread navigieren

gibt es keine möglichkeit es so zu machen:

1. user ist nicht eingeloggt und drückt auf antworten
2. user wird zum login weitergeleitet
3. nachdem der user eingeloggt ist, kann er sofort die antwort schreiben und muss nicht erst wieder den thread raussuchen

wer von euch weiss rat ?

danke

Verfasst: 21.04.2005 16:43
von ATARI
das ist doch eine standart-funktion bei phpbb2.

Verfasst: 21.04.2005 18:06
von vsitor
hallo

also bei mir nicht :-(

sobald ich aufs antworten drücke und mich einlogge, bin ich zwar eingeloggt
aber muss den thread wieder suchen und dann auf antworten drücken

kann man das irgendwie im backend einstellen ?
oder hat es etwas mit cookies zu tun ?

Smart Log In Redirect

Verfasst: 21.04.2005 18:59
von Brenna
Hi,

eine Lösung ist Smart Log In Redirect.

Link zur Download-Seite:
http://smartor.is-root.com/viewtopic.php?t=2716

Grüße
Brenna

Verfasst: 21.04.2005 19:12
von vsitor
vielen dank für den link, ich hab jedoch ein problem. vielleicht funktioniert das bei mir nicht mehr weil ich den calendar_lite hab?

jedenfalls ist bei mir folgender code in der page-header.php:

Code: Alles auswählen

if ( $userdata['session_logged_in'] )
{
	$u_login_logout = 'login.'.$phpEx.'?logout=true&sid=' . $userdata['session_id'];
	$l_login_logout = $lang['Logout'] . ' [ ' . $userdata['username'] . ' ]';
}

else
{
	// Mod Calendar
	if (isset($caluser)) {
		$u_login_logout = 'login.'.$phpEx.'?redirect=calendar.'.$phpEx;
		}
	else {
		$u_login_logout = 'login.'.$phpEx;
		}
	// End Mod for Calendar
	$l_login_logout = $lang['Login'];
}
in der anweisung steht aber ich soll ihn durch den hier ersetzen:

Code: Alles auswählen

if ( $userdata['session_logged_in'] )
{
	$u_login_logout = 'login.'.$phpEx.'?logout=true&sid=' . $userdata['session_id'];
	$l_login_logout = $lang['Logout'] . ' [ ' . $userdata['username'] . ' ]';
}


else
{
	$smart_redirect = strrchr($HTTP_SERVER_VARS['PHP_SELF'], '/');
	$smart_redirect = substr($smart_redirect, 1, strlen($smart_redirect));

	if( ($smart_redirect == ('profile.'.$phpEx)) or ($smart_redirect == ('login.'.$phpEx)) )
	{
		$smart_redirect = '';
	}

	if( isset($HTTP_GET_VARS) and !empty($smart_redirect) )
	{		
		$smart_get_keys = array_keys($HTTP_GET_VARS);

		for ($i = 0; $i < count($HTTP_GET_VARS); $i++)
		{
			if ($smart_get_keys[$i] != 'sid')
			{
				$smart_redirect .= '&' . $smart_get_keys[$i] . '=' . $HTTP_GET_VARS[$smart_get_keys[$i]];
			}
		}
	}

	$u_login_logout = 'login.' . $phpEx;
	$u_login_logout .= (!empty($smart_redirect)) ? '?redirect=' . $smart_redirect : '';
	$l_login_logout = $lang['Login'];
}
dann geht aber doch der calendar nicht mehr oder ?
danke

Verfasst: 21.04.2005 19:50
von Brenna
Hi,

hm, wenn ich es mit meinen minimalen PHP-Kenntnissen richtig verstehe, dann handelt es sich bei der Änderung durch den Kalender-Mod um eine Weiterleitung auf die Kalenderseite, wenn man von der Kalenderseite aus auf Login klickt, oder? Wenn es so ist, dann ist das kein Problem.

Ich bin mir da nicht sicher, weil ich den Mod nicht kenne und selbst noch Anfänger bin.

Mein Vorschlag:
Probiere einfach die geänderte Datei aus, aber mache vorher eine Sicherungskopie von der page_header.php - für alle Fälle!

Grüße
Brenna

Verfasst: 21.04.2005 19:55
von vsitor
hallo :-)

also ich bedanke mich nochmal herzlich.
heute abend wird wohl keiner auf dem board unterwegs sein, da probiere ich es gern mal aus. wenn etwas nicht klappt, komm ich wieder :-)

danke nochmal