Seite 1 von 1

[Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 25.08.2010 16:43
von forant
Hallo,

ist es möglich, das beim verlassen des phpBB3-Forum eine andere URL bzw. Unterseite (z.B. xxxxx.php) aufgerufen werden kann?

Vorgehensweise:
Benutzer ist registriert, meldet sich an und verweilt im Forum.
1. klickt er auf "Abmelden",
oder
2. erfolgt die Abmeldung automatisch
so wäre toll wenn er auf eine andere Seite geführt werden könnte.

Wenn möglich, wie?

Danke für Hinweise.

Greatings

Martin

Re: Automatische Weiterleitung beim "Abmelden"

Verfasst: 25.08.2010 17:19
von modernist
mdietrich hat geschrieben:2. erfolgt die Abmeldung automatisch
so wäre toll wenn er auf eine andere Seite geführt werden könnte.
Da frage ich mich, wozu? Aufgrund Erfahrungen in anderen Foren erwarte ich einfach, nach dem Abmelden wieder auf der Startseite des Forums zu landen.

Ich habe es nicht ausprobiert, aber die Änderungen dürften in der ucp.php vozunehmen sein:

Code: Alles auswählen

	case 'logout':
		if ($user->data['user_id'] != ANONYMOUS && isset($_GET['sid']) && !is_array($_GET['sid']) && $_GET['sid'] === $user->session_id)
		{
			$user->session_kill();
			$user->session_begin();
			$message = $user->lang['LOGOUT_REDIRECT'];
		}
		else
		{
			$message = ($user->data['user_id'] == ANONYMOUS) ? $user->lang['LOGOUT_REDIRECT'] : $user->lang['LOGOUT_FAILED'];
		}
		meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));

		$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . append_sid("{$phpbb_root_path}index.$phpEx") . '">', '</a> ');
		trigger_error($message);

	break;
Änder mal {$phpbb_root_path}index.$phpEx mit deiner Wunschseite!

Re: Automatische Weiterleitung beim "Abmelden"

Verfasst: 26.08.2010 09:04
von forant
modernist hat geschrieben:Da frage ich mich, wozu?
Hier die Antwort:
Telekom unterstützt kein .htaccess. Auf Anfrage wurde seitens Telekom folgende Begründung genannt:
Als Nutzer eines Homepage Produktes bei der Telekom teilen Sie sich mit anderen Kunden einen gemeinsamen Webserver. Die .htaccess beeinflusst die Konfiguration des Webservers direkt, so das bei falscher Verwendung von .htaccess die Gefahr besteht, dass die Internetseiten anderer Kunden in Mitleidenschaft gezogen werden (Performance, Hackerangriffe etc.).
Die Startdateien im Hauptverzeichnis werden bei Telekom mit absteigender Priorität ausgeführt werden:
index.pl / index.cgi /index.php / index.php4 / index.html /index.htm / home.html / default.html
Da ich aber die portal.php als Startsteite benötige, habe ich in der index.php folgenden Code

Code: Alles auswählen

if (strpos($_SERVER['REQUEST_URI'], '[color=#0000FF]index.php[/color]') === false)
header('Location: http://www.meinedomain.de/[color=#0000FF]portal.php[/color]');
direkt nach <?php implementiert
(Vorstehender Code wurde mir von einem User bei Telekom (nicht von Telekom) zur Verfügung gestellt.)

Um nun auch beim Verlassen des Forums (Abmelden) auch wieder auf das Portal zu gelangen, habe ich Deinen Lösungsvorschlag (welcher funktioniert - dafür vielen Dank) benötigt.

Greatings

Martin

Anmerkung: Ich habe es deshalb so ausführlich geschrieben, damit auch andere User nunmehr kompakt für eine solche Aufgabenstellung gerüstet sind.

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 30.01.2012 17:42
von Sandy_93
modernist hat geschrieben: Änder mal {$phpbb_root_path}index.$phpEx mit deiner Wunschseite!
Ich habe mein Code wie du gesagt hast geändert, das funktioniert aber trozdem nicht. Also ich kenn mich mit php gar nicht aus. hab das {$phpbb_root_path}index.$phpEx mit www.meinehomepage.de umgetauscht, alles andere so gelassen.

Hier der geänderte Code:

Code: Alles auswählen

case 'logout':
		if ($user->data['user_id'] != ANONYMOUS && isset($_GET['sid']) && !is_array($_GET['sid']) && $_GET['sid'] === $user->session_id)
		{
			$user->session_kill();
			$user->session_begin();
			$message = $user->lang['LOGOUT_REDIRECT'];
		}
		else
		{
			$message = ($user->data['user_id'] == ANONYMOUS) ? $user->lang['LOGOUT_REDIRECT'] : $user->lang['LOGOUT_FAILED'];
		}
		meta_refresh(3, append_sid("http://www.meiehomepage.de/")); 
		
		$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . append_sid("http://www.meinehomepage.de/") . '">', '</a> ');
		trigger_error($message);

	break;


Was habe ich da falsch gemacht? Kann mir jemand sagen was ich wo ich genau meine Homepage-Url hinschreiben muss, damit nach der Abmeldung die Weiterleitung erfolgt bitte!

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 30.01.2012 18:30
von modernist
Sandy_93 hat geschrieben: meta_refresh(3, append_sid("http://www.meiehomepage.de/"));
Die Syntax ist auch Murks.

Versuch's mal mit

Code: Alles auswählen

//		meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));

		header('refresh: 0; URL=https://phpbb.de');

		$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="'https://phpbb.de'">', '</a> ');
RETURN_INDEX solltest du noch durch eine passende Sprachvariable ersetzen, die dann auch in den Sprachdateien zu ergänzen ist, denn man wird ja nicht mehr auf die index.php weitergeleitet.

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 31.01.2012 16:07
von Sandy_93
modernist hat geschrieben: RETURN_INDEX solltest du noch durch eine passende Sprachvariable ersetzen, die dann auch in den Sprachdateien zu ergänzen ist, denn man wird ja nicht mehr auf die index.php weitergeleitet.
1. Kannst du mir sagen wie ich das genau mache. Also ich kenne mich mit php gar nicht aus. Wusste gar nicht dass die Weiterleitung so schwer sein wird.

modernist hat geschrieben:

Code: Alles auswählen

 //     meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));
2. Soll diese Zeile auskommentiert werden?

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 31.01.2012 17:30
von modernist
Sandy_93 hat geschrieben:2. Soll diese Zeile auskommentiert werden?
Ja, ist praktischer, falls du später wieder das Standardverhalten wiederherstellen willst.
Sandy_93 hat geschrieben:1. Kannst du mir sagen wie ich das genau mache
Öffne die common.php deines Sprachpakets (language/de/ z.B.) und ergänze hinter RETURN_INDEX in einer neuen Zeile (oder du ordnest es streng alphabetisch, dann hinter RETURN_FORUM):

Code: Alles auswählen

	'RETURN_MYSITE'				=> '%sSie werde zu mysite weitergeleitet%s',
oder welchen Text du da haben möchtest.

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 01.02.2012 11:01
von Sandy_93
also ich habe jetzt die common.php-Datei, welches im Verzeichnis \language\sie liegt um eine weitere Variable erweitert:

Code: Alles auswählen

'RETURN_HOMEPAGE'	=> '%sSie werden zur Homepage weitergeleitet%s',
Die ucp.php-Datei habe sieht bei mir nun so aus:

Code: Alles auswählen

case 'logout':
		if ($user->data['user_id'] != ANONYMOUS && isset($_GET['sid']) && !is_array($_GET['sid']) && $_GET['sid'] === $user->session_id)
		{
			$user->session_kill();
			$user->session_begin();
			$message = $user->lang['LOGOUT_REDIRECT'];
		}
		else
		{
			$message = ($user->data['user_id'] == ANONYMOUS) ? $user->lang['LOGOUT_REDIRECT'] : $user->lang['LOGOUT_FAILED'];
		}
			
   // meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));
   // $message = $message . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . append_sid(" {$phpbb_root_path}index.$phpEx") . '">', '</a> ');
			
			header('refresh: 0; URL=www.meinehomepage.de');
			$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_HOMEPAGE'], '<a href="'www.meinehomepage.de'">', '</a> ');
			
	  trigger_error($message);

   break;
Aber jetzt kann ich mich nicht mal im Forum anmelden, ich bekomme im Webbrowser folgende Fehlermeldung:

Code: Alles auswählen

Parse error: syntax error, unexpected T_STRING in /vrmd/homepages/u37697/meinehomepage.de/ucp.php on line 102
und Zeile 102 in ucp.php ist:

Code: Alles auswählen

$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_HOMEPAGE'], '<a href="'www.meinehomepage.de'">', '</a> ');
Was muss ich machen? :-?

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 01.02.2012 11:11
von modernist
Mein Fehler. Da sind zwei ' zu viel für den Wert in href.

Damit sollte es klappen:

Code: Alles auswählen

$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_HOMEPAGE'], '<a href="www.meinehomepage.de'">', '</a> ');

Re: [Gelößt] Automatische Weiterleitung beim "Abmelden"

Verfasst: 01.02.2012 11:24
von Sandy_93
Es klappt. Was hätte ich nur ohne dich gemacht.
Danke 1000 mal!