Seite 1 von 1
					
				Dynamisches Login
				Verfasst: 23.09.2002 22:08
				von Gast
				Hallo,
ich wollte auf der Startseite meiner Homepage außerhalb des phpBB ein Login-Formular anzeigen lassen. Dieses sieht man wenn man ausgeloggt ist, nachdem man eingeloggt ist, gelangt man wieder auf die Startseite und sieht dort nicht mehr das Login-Formular, sondern:
Eingeloggt als: USERNAME
oder sowas ähnliches.
Hab das Forum durchstöbert, leider konnte ich nichts für mein Vorhaben finden.
Das einzige was ich gefunden habe war ein Portal-Hack. Das scheint mir zu komplex um so eine einfache Funktion zu realisieren. Gibt es da eine Lösung?
Gruß & Danke Daniel
			 
			
					
				
				Verfasst: 24.09.2002 10:48
				von Jazz
				Genau so ein Ding brauch ich auch.
			 
			
					
				
				Verfasst: 28.09.2002 12:02
				von Acid
				<?php 
define('IN_PHPBB', true); 
$phpbb_root_path = "./";
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX, $session_length); 
init_userprefs($userdata); 
include('includes/page_header.'.$phpEx); 
if ($userdata['session_logged_in'])
{
        echo "hello, $userdata[username]";
}
else
{
	$header_location = ( @preg_match("/Microsoft|WebSTAR|Xitami/", getenv("SERVER_SOFTWARE")) ) ? "Refresh: 0; URL=" : "Location: ";
	header($header_location . append_sid("login.$phpEx?redirect=ja.$phpEx", true));
	exit;
}
include('includes/page_tail.'.$phpEx); 
?>
..entweder so, dann wird beim Aufruf der Datei (hier im Beispiel ja.* genannt) auf die login.php weitergeleitet, wenn ma ned eingeloggt is. Und nach dem Einloggen landet ma wieder auf der ja.php. Das includen von page_header.php/page_tail.php is optional, der Rest müsste in der Datei vorkommen...
<?php 
define('IN_PHPBB', true); 
$phpbb_root_path = "./";
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX, $session_length); 
init_userprefs($userdata); 
include('includes/page_header.'.$phpEx); 
if ($userdata['session_logged_in'])
{
        echo "hello, $userdata[username]";
}
else
{
        echo "<form action=\"login.$phpEx\" method=\"post\">";
        echo "<table width=\"50%\" cellpadding=\"4\" cellspacing=\"1\" border=\"0\" class=\"forumline\" align=\"center\">";
                echo "<tr><td width=\"45%\" align=\"right\"><span class=\"gen\">$lang[Username]:</span></td>
                          <td><input type=\"text\" name=\"username\" size=\"25\" maxlength=\"40\" value=\"$userdata[username]\" class=\"post\" /></td></tr>";
                echo "<tr><td align=\"right\"><span class=\"gen\">$lang[Password]:</span></td>
                          <td> <input type=\"password\" name=\"password\" size=\"25\" maxlength=\"25\" class=\"post\" /></td></tr>";
                echo "<tr align=\"center\"> 
                          <td colspan=\"2\"><span class=\"gensmall\">$lang[Log_me_in]: <input type=\"checkbox\" name=\"autologin\" checked=\"checked\" /></span></td></tr>";
                echo "<tr align=\"center\">
                          <td colspan=\"2\"><input type=\"hidden\" name=\"redirect\" value=\"' . $forward_page . '\" />
                                            <input type=\"submit\" name=\"login\" class=\"mainoption\" value=\"$lang[Login]\" /></td></tr>";
        echo "</table></form>";
}
include('includes/page_tail.'.$phpEx); 
?>
..oder so, dann wird bei nicht eingeloggten Usern auf der *.php ein Login Formular angezeigt, und halt bei eingeloggten User der Username.
Auch hier sind page_header/page_tail optional (und der Rest notwendig), allerdings müsst ma dann natürlich andere Farbdefinition angeben.