Seite 1 von 2

Frage zum Profil

Verfasst: 22.07.2004 13:18
von Bastian K
Hallo Forum.

Ich möchte, daß die Profile nur noch für registrierte User sichtbar sind. Ich stelle mich aber scheinbar zu blöde an und benötige mal Hilfe.
Ich bekomme es zwar hin, daß ich als nichteingeloggter User auf den Link zu einem Profil klicke und dann zur Login-Seite leite, aber hier hakt es dann.
Beim redirect komme ich nicht weiter.

Ich habe folgendes versucht: In /includes/usercp_viewprofile.php am Anfang der Datei hinter

Code: Alles auswählen

if ( !defined('IN_PHPBB') )
{
	die("Hacking attempt");
	exit;
}
folgenden Code eingefügt:

Code: Alles auswählen

if( !$userdata['session_logged_in'] )
{
    header("Location: " . append_sid("login.$phpEx?redirect=profile.$phpEx?mode=viewprofile&u=1", true));
}
Nur der Redirect funktioniert so natürlich nicht, weil mein & in ein ? verwandelt wird und ein & auch nicht funktioniert. Ich weiß nicht, wie iich die korrekte Umleitung nach dem Login bewerkstelligen sollte.
Außerdem weiß ich dann nicht, wie ich die User-ID (also welches Profil gezeigt werden soll) mit übergeben soll. In meinem Code hatte ich da ja jetzt erstmal nur eine 1 geschrieben zum testen.

Ich wäre echt dankbar, wenn mir hier jemand weiterhelfen könnte. Ist für die Profis ja vermutlich nur ein Klacks. Für mich aber nicht.

Danke schon mal.

Verfasst: 22.07.2004 13:34
von Markus67

Verfasst: 22.07.2004 14:43
von Bastian K
danke für den link. der hilft mir aber leider auch nicht wirklich weiter.
das man zu einem login kommt, wenn man sich das profil eines users ansehen will, das hatte ich auch schon hinbekommen.
wichtig ist mir, daß man nach dem erfolgreichen login dann auch zum entsprechenden profil weitergeleitet wird und das klappt da in dem anderen thread auch nicht. die weiterleitung (beim profil) ist fehlerhaft und ich weiß nicht, wie ich es richtig mache...

Verfasst: 22.07.2004 15:13
von Christian_W
Also ich habe jetzt die Änderungen an der profile.php aus dem Link von Markus bei mir gemacht. Zusätzlich habe ich noch folgendes gemacht:

Code: Alles auswählen

----- finde -----
if (!empty($HTTP_POST_VARS['sid']) || !empty($HTTP_GET_VARS['sid']))
{
	$sid = (!empty($HTTP_POST_VARS['sid'])) ? $HTTP_POST_VARS['sid'] : $HTTP_GET_VARS['sid'];
}
else
{
	$sid = '';
}

----- füge danach ein -----
if (!empty($HTTP_POST_VARS['u']) || !empty($HTTP_GET_VARS['u']))
{
	$user_id = (!empty($HTTP_POST_VARS['u'])) ? $HTTP_POST_VARS['u'] : $HTTP_GET_VARS['u'];
}
else
{
	$user_id = '';
}


----- finde -----
		redirect(append_sid("login.$phpEx?redirect=profile.$phpEx", true))

----- ersetze mit -----
		redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=viewprofile&u=$user_id", true));
So funktioniert die Weiterleitung auf das ursprünglich aufgerufene Profil.

Gruß Christian

Verfasst: 22.07.2004 16:07
von Bastian K
Klasse. Vielen Dank dafür.
Das sollte ein Mod vielleicht jetzt auch im anderen Thread posten, falls das noch andere suchen.

Verfasst: 22.07.2004 18:17
von Christian_W

Verfasst: 21.09.2004 19:41
von Danny71
Hi Christian_W,

ich bekomme folgenden Fehler, wenn ich von aussen und nach dem Login auf Profile klicke:

Parse error: parse error, unexpected '}' in /home/www/htdocs/fun4dive.de/dk/forum/profile.php on line 47


das in line 47 ist die }

Code: Alles auswählen

   $user_id = ''; 
} 

Verfasst: 22.09.2004 08:56
von Christian_W
Verlinke mal die ganze Datei. anhand dieser zwei Zeilen kann man den Fehler nicht erkennen.
KB:datei

Gruß Christian

Verfasst: 22.09.2004 13:30
von Danny71
Hier mal die ganze Profil als txt-Datei.

http://www.fun4dive.de/dk/profile.txt

Danke für die Beschreibung :)

Verfasst: 22.09.2004 14:21
von Acid

Code: Alles auswählen

   $user_id = (!empty($HTTP_POST_VARS['u'])) ? $HTTP_POST_VARS['u'] : $HTTP_GET_VARS['u'];
Vor dieser Zeile fehlt noch..

Code: Alles auswählen

if (!empty($HTTP_POST_VARS['u']) || !empty($HTTP_GET_VARS['u']))
{