Seite 1 von 1

Redirect nach login Problem -> profile.php

Verfasst: 06.03.2007 12:28
von lownoise
Hallo

Es geht darum, die Profile nur eingeloggten Usern zugänglich zu machen. Dazu habe ich mich umgeschaut, um den entsprechenden Beitrag auch gefunden...

http://www.phpbb.de/viewtopic.php?t=47560

ich habe alle Änderungen vorgenommen, und werde nun aufgefordert mich einzuloggen, hat geklappt prima, jedoch funktioniert der redirect nicht, also vorsichtig angemerkt, habe ich die entsprechende Zeichenkettepassage nicht die ich dafür bearbeiten soll in meiner Datei : profile.php (daher auch kein redirect)

In nutze das Php Forum Packet:
"phpbb2 Plus version 1.53a"

meine profile.php hat folgende Versionnummer:
$Id: profile.php,v 1.193.2.3 2003/03/02 23:16:17 acydburn Exp $

und nun zum Problem genau...

ich soll folgende Stelle finden laut Anleitung:
----- 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 = '';
}

....aber in meiner profile.php sieht es leider etwas anders aus, nämlich folgendermassen:
if (!empty($_POST['sid']) || !empty($_GET['sid']))
{
$sid = (!empty($_POST['sid'])) ? $_POST['sid'] : $_GET['sid'];
}
else
{
$sid = '';
}

Ich wäre danbar, falls es irgendwo eine Anleitung / Hilfe gibt wie ich das Problem nun löse ??

Verfasst: 06.03.2007 12:38
von Dr.Death
Hi,

währe das nicht eine Support Anfrage an:

www.phpbb2.de ?

aber.... du bist schon an der richtigen Stelle.

Code: Alles auswählen

$HTTP_POST_VARS  --> enspricht --> $_POST
$HTTP_GET_VARS --> entspricht --> $_GET

und... benutze bitte demnächst die

Code: Alles auswählen

[code]dein code
[/code] tags...

Verfasst: 06.03.2007 20:21
von lownoise
okay danke für die schnelle Antwort und den Tipp, habe es so eingearbeitet,..

nun folgendes Problem, wenn ich mich einlogge und auf ein userprofil gehe und die url kopiere, mich abmelde und die url mit der userid einfüge. kommt zwar der anmelde bildschirm, aber es erfolgt kein redirect zum userprofil, es wird die standard index.php stattdessen geladen...

die url die ich in die adresszeile einfüge:

Code: Alles auswählen

http://www.meinedomain.de/forum/profile.php?mode=viewprofile&u=3
danach melde ich mich an und die index.php wird geladen, hmm ??

Also meine profile.php wurde nach der Anleitung abgeändert, hier der codeauszug aus meiner, nach der Anleitung geänderten profile.php...

Code: Alles auswählen

// session id check
if (!empty($_POST['sid']) || !empty($_GET['sid']))
{
	$sid = (!empty($_POST['sid'])) ? $_POST['sid'] : $_GET['sid'];
}
else
{
	$sid = '';
}
if (!empty($_POST['u']) || !empty($_GET['u'])) 
{ 
   $user_id = (!empty($_POST['u'])) ? $_POST['u'] : $_GET['u']; 
} 
else 
{ 
   $user_id = ''; 
}
und ein wenig weiter in der Datei folgendes...

Code: Alles auswählen

if ( !$userdata['session_logged_in'] && $mode == 'editprofile' )
{
redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=viewprofile&u=$user_id", true));
}
hmm, alles eigentlich so wie es soll, denke ich, ich seh den Fehler nur nicht ?

Für Hilfe währe ich sehr dankbar, und ja ich werde mich demnächst auch bei phpbb2.de umschauen, weil das Thema ja eigentlich da reingehört, sorry. :(

Verfasst: 07.03.2007 13:53
von lownoise
Ich hab den Fehler gefunden...

Einfach 100% streng nach schon vorhandener Anleitung vorgehen...

http://www.phpbb.de/viewtopic.php?t=47560

Dabei beachten(, das war nämlich mein Fehler), das man die Datei profile.php zwei mal in der Anleitung öffnet und ändert, beim ersten bearbeiten der Datei wird eine Änderung durchgeführt, die man in der zweiten Bearbeitung wieder ändern soll, ein bisschen verwirrend für mich aber, es funktioniert, wenn man sich genau dran hält.

und wie mir schon aufgezeigt wurde natürlich drauf achten...

Code: Alles auswählen

$HTTP_POST_VARS  --> enspricht --> $_POST 
$HTTP_GET_VARS --> entspricht --> $_GET