Loginbox - Redirect ?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Fredereck
Mitglied
Beiträge: 48
Registriert: 16.01.2003 17:10

Loginbox - Redirect ?

Beitrag von Fredereck »

Hi,

Ich habe im phpBB eine Loginbox an verschiedenen stellen. So z.B. bei der Betrachtung spezieller Foren.

Wenn ich mich nun aber in einem Unterforum einlogge, springt das Board wieder auf die Startseite zurück. Ich denke das liegt an der login.php an der Stelle :

Code: Alles auswählen

if( !empty($HTTP_POST_VARS['redirect']) )
						{
	header($header_location . append_sid($HTTP_POST_VARS['redirect'], true));
	exit;
						}
						else
						{
	header($header_location . append_sid("[u][b]index[/b][/u].$phpEx", true));
	exit;
					}
Bitte

Code: Alles auswählen

 verwenden![/color] [kb=knigge#code]Posten von Code[/kb]
So, meine Fragen:

1.: Bin ich in diesem Forum richtig ? Ich meine ist ja kein ganzer Mod ?
2.: Wie kann ich es modifizieren, dass nach erfolgreichem Einloggen die Seite aufgerufen wird, die zuletzt Besucht wurde, bzw. von der aus der Login getätigt wurde ?

Würde mich über Eure hilfen freuen,

cu f
Benutzeravatar
Vincent
Mitglied
Beiträge: 130
Registriert: 10.03.2004 14:05
Wohnort: Amberg
Kontaktdaten:

Beitrag von Vincent »

ich würd genau das selbe problem lösen:

ich hab eine loginbox in meinem header und möchte nun nach erfolgreichem login auf der seite bleiben

Fredereck: haste das hinbekommen?
Benutzeravatar
Mister_X
Ehemaliges Teammitglied
Beiträge: 7102
Registriert: 24.05.2001 02:00
Wohnort: Augsburg

Beitrag von Mister_X »

füge oberhalb deines Login Submit Buttons noch folgendes ein:

Code: Alles auswählen

<input type="hidden" name="redirect" value="name_der_seite.html" />
Benutzeravatar
Vincent
Mitglied
Beiträge: 130
Registriert: 10.03.2004 14:05
Wohnort: Amberg
Kontaktdaten:

Beitrag von Vincent »

diese zeile gibt eine feste seite an.

ich möchte dass vorher die Ursprungsseite (von wo aus login.php aufgerufen wurde) ermittelt wird und dann als redirect hier verwendet wird
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Dann verwende stattdessen $_SERVER['PHP_SELF'] :roll:
Benutzeravatar
Vincent
Mitglied
Beiträge: 130
Registriert: 10.03.2004 14:05
Wohnort: Amberg
Kontaktdaten:

Beitrag von Vincent »

Danke,

ah super, genau nach dem Code hab ich gesucht.

Cyu, thx

me
Benutzeravatar
Vincent
Mitglied
Beiträge: 130
Registriert: 10.03.2004 14:05
Wohnort: Amberg
Kontaktdaten:

Beitrag von Vincent »

hmpf,

is wohl doch nich gar so einfach gewesen.

Folgendes grundsätzliches: Ich habe eine LoginBox in meiner navig.php die, über den Overall_header in jede seite eingebunden wird.

Ein stinknormales formular mit

Code: Alles auswählen

<input type="hidden" name="redirect" value="..<?php echo $_SERVER['PHP_SELF'] ?>"> 
nun hab ich das endlich hinbekommen mit der "Form" des PHP_SELF jedoch gibt mir diese Variable dann nur die URL dieser navig.php im relativem pfad an vom Webspaceroot aus, aus.

Code: Alles auswählen

     <input type="hidden" name="redirect" value="../phpbb/navig.php">  
das ist jetzt der quellcode meiner start.php (im selben verzeichnis wie die navig.php (nämlich phpbb)), den ich über die Menüoption meines browser hab.

das stimmt natürlich nicht weil ich ja nicht nach navig.php weitergeleitet werden möchte sondern, in diesem fall nach start.php

(übrigens die beiden punkte .. sind nötig weil die PHP_SELF variable anscheinend den relativen pfad von meinem Webspace-Root angibt deswegen muss ich für die URL dann erst in dieses zurückgehen damit die URL stimmt. - OK das is kein problem)

vielmehr ist es ein problem, dass PHP_SELF ausgewertet wird bevor navig.php in die jeweilige seite includiert wird.
Gibt es da irgendwie abhilfe?
Benutzeravatar
Vincent
Mitglied
Beiträge: 130
Registriert: 10.03.2004 14:05
Wohnort: Amberg
Kontaktdaten:

Beitrag von Vincent »

OK für alle dies auch gern so hätten:

über einen kleinen Umweg kriegt mans auch hin auch wenns vielleicht eleganter wäre:

eine login-redirect.php im phpbb root mit einem

Code: Alles auswählen

<meta http-equiv="refresh" content="2; URL=<?php echo $_SERVER['HTTP_REFERER'] ?>">
im kopf funktioniert.

vielleicht hat ja jemand doch ne elegantere lösung

cu
vinc
Davidaff
Mitglied
Beiträge: 37
Registriert: 26.06.2003 19:12

Beitrag von Davidaff »

hi

wurde das problem jetzt schon irgendwie gelöst?

Ich such schon seit 3 Stunden nach einer möglichkeit, jedoch finde ich keine brauchbaren Infos drübr :cry:
Benutzeravatar
Markus67
Ehrenadmin
Beiträge: 28346
Registriert: 12.01.2004 16:02
Wohnort: Neuss
Kontaktdaten:

Beitrag von Markus67 »

Hi ...

versuchs mal mit dem hier :wink:
Smart Login Redirect
This hack will redirect the user to the page where clicked log in/out after logging in/out successfully.

Markus
Antworten

Zurück zu „Coding & Technik“