Seite 1 von 5

Problem: Begrüßung nach Login auf der Homepage.

Verfasst: 10.06.2007 15:33
von andy3000
Hallo Leute,

habe wieder ein Problem.

Ich habe das Login-Formular in meine Homepage integriert. Es funktioniert so weit.

Das unten habe ich gemacht.
Diesen Code muss man am Anfang der Seite einfügen.

Code: Alles auswählen

<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = 'forum/'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

//Session auslesen und Benutzer-Informationen laden 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata);
?>
Und diesen, wo man das Login-Formular haben möchte:

Code: Alles auswählen

<form action="forum/login.php" method="post"> 
<p>Benutzername:<input type="text" name="username"><br> 
Passwort:<br><input type="password" name="password"><br> 
Autologin?<input type="checkbox" name="autologin"><br>
<input type="hidden" name="redirect" value="../hilfe.php"></p> 
<input type="submit" name="login" value="Login"> 
</form>
Doch ich möchte, dass nach dem Einoggen an der Stelle des Formulars ein Begrüßungstext erscheint und sonst wieder Login-Formular.
Und das bekommen ich nicht hin.

Als ich gesucht habe, habe ich gefunden, dass es mit...

Code: Alles auswählen

if( $userdata['session_logged_in'] ) 
{
 echo 'Hallo  '.$userdata['username'].'! Willkommen im Forum'; 

}
else 
{ 
echo 'Du bist nicht eingeloggt '; 
}
... funktionieren soll. Doch ich hab keine Ahnung, was ich da machen muss.
Etwas problematisch ist auch, dass der erste Code am Anfang der Seite ist und mein Formular viel weiter unten. Dazwischen gibt es jede Menge HTML- und auch PHP-Code. Deshalb weis ich nicht, wie man das jetzt macht.

HILFE!

Danke schon mal für die Antworten.

Verfasst: 11.06.2007 16:53
von andy3000
*push*

keiner eine Idee?

Verfasst: 12.06.2007 17:36
von andy3000
wirklich keiner?

Verfasst: 14.06.2007 15:59
von andy3000
Das ist dringend.
Ich will nur wissen, wo und in welcher Reihenfolge ich die oben genannten Codes einfügen muss.

Verfasst: 16.06.2007 16:23
von andy_hv
Du musst ja eigendlich nur das Login formular ändern. Wen du jetzt das Login formular absendest, kommst du auf die login.php.
Wen du selber eine datei machst, begruessung.php und dort dein text reinschreibst und ihn auch richtig verlinkst, wird das so sein wie du es hoffendlich willst.

Verfasst: 17.06.2007 15:51
von cbrkiter
Kannst Du mal bitte die php-Datei verlinken? Dann kann man mal sehen, worum es genau geht, um auch zu schauen, wo man bei Dir ansetzen müsste.

Verfasst: 18.06.2007 11:49
von andy3000
hier ist die PHP-Datei:

KLICK
Das, was ich möchte, funktioniert nicht, weil ich nicht weis, in welcher Reihenfolge ich die Codes einfügen muss und wie ich sie verknüpfen muss.

Verfasst: 18.06.2007 12:14
von cbrkiter
So hab ich es zwar auch noch nie getestet, was Du da vor hast, aber auf jeden Fall fehlt die PHP-Prozessanweisung. Also probiere es erstmal damit:

Code: Alles auswählen

<?php
 if( $userdata['session_logged_in'] ) 
{ 
 echo 'Hallo  '.$userdata['username'].'! Willkommen im Forum'; 

} 
else 
{ 
echo 'Du bist nicht eingeloggt '; 
}
?>

Verfasst: 18.06.2007 12:30
von andy3000
schon viel besser. :)

Jetzt wird der Begrüßungstext aber immer angezeigt.
Ich möchte aber erreichen, dass, wenn man nicht eingeloggt ist, nur das
Login-Formular erscheint, und wenn man eingeloggt ist, nur der Begrüßungstext erscheint. Das muss doch irgend wie gehen, oder?

Verfasst: 18.06.2007 12:58
von cbrkiter
Ok. Testen wir uns mal langsam 'ran. Probiere mal bitte folgendes:

Code: Alles auswählen

<?php 
if ( !$userdata['session_logged_in'] ) 
{ 
?>
	<form action="forum/login.php" method="post"><p>
		Benutzername:<input type="text" name="username"><br> 
		Passwort:<br><input type="password" name="password"><br> 
		Autologin?<input type="checkbox" name="autologin"><br> 
		<input type="hidden" name="redirect" value="../hilfe.php"></p> 
		<input type="submit" name="login" value="Login"> 
	</form>
<?php 
} // END if
else 
{ 
?>
	<p>Hallo <?php echo $userdata['username']; ?>! Willkommen im Forum'; </p>
<?php 
} // END else
?>