Seite 1 von 1

Login-Fragen

Verfasst: 02.12.2007 00:44
von MasterPeas89
Hallo Leute,

hab da mal 3 Fragen:

1. Ich habe ein externes-Login auf meiner Homepage fürs forum eingerichtet mit vollgendem Code:

Code: Alles auswählen

<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
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);
?>



<?php 
if ( $userdata['session_logged_in'] ) 
{ ?> 
      


           Logout



<?php } 
   else 
{ 
   ?>

<form action="login.php" method="post"> 
Benutzername: <input type="text" name="username"><br> 
Passwort: <input type="password" name="password"><br> 
Autologin? <input type="checkbox" name="autologin"><br> 
<input type="hidden" name="redirect" value="test.php"> 
<input type="submit" name="login" value="Login"> 
</form>

<?php  } ?>
soweit geht auch alles doch nun meine erste Frage: Dort wo jetzt nur Logout steht soll ein Logout-Link platziert werden hinter dem der Nickname des Users steht, sodass sich die eingelogten User ausloggen können. Wie mach ich das?


2. Nun sollen die User, wenn sie eingelogt sind nicht nicht nur den Logout-Butten sehen, sonder auch auf das eigene Profil und die Mitgliederliste zugreifen können. Wie kann auch das realisiert werden?

Bin in sachen PHP volliger Anfänger, hoffe aber ihr könnt mir trotzdem weiterhelfen.

Danke im Vorraus

Verfasst: 02.12.2007 17:09
von MasterPeas89
So hab jetzt nochmal ein bisschen im Forum gesucht und vollgenden Code gefunden:

Über dem HTML-Tag also ganz oben muss vollgendes stehen

Code: Alles auswählen

<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
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 im Body-Tag wo der Login platziert werden soll muss dies stehen

Code: Alles auswählen

<?php

if($userdata['session_logged_in']){ 
?> 

<div align="left"> 
  <center><font size="1" face="Verdana">Hallo, <?=$userdata[username]?>!</font></center> 
</div><br> 

<div class="nav"><font face="Verdana"><font size="1">:: </font> 
   <a class="nav" href="profile.php?mode=editprofile"> 
   <font size="1">Profil bearbeiten</font></a></font> 
</div> 

<div class="nav"><font face="Verdana"><font size="1">:: </font> 
   <a class="nav" href="privmsg.php?folder=inbox"> 
   <font size="1">Private Nachrichten</font></a></font> 
</div> 
  
<div class="nav"><font face="Verdana"><font size="1">:: </font> 
   <a class="nav" href="login.php?logout=true"> 
   <font size="1">Ausloggen</font></a></font> 
</div> 

<font size="1" face="Verdana"> 

<?php 
}else{ 
?> 

</font> 

<form action="login.php" method="post"> 
  <table border="0" cellpadding="3" cellspacing="1" width="100%"> 
    <tr> 
      <td> 
        <font size="1" face="Verdana">Username:<br> 
        <input class="searchbox" type="text" name="username" size="10" maxlength="40"> 
        </font> 
      </td> 
    </tr> 
    <tr> 
      <td> 
        <font size="1" face="Verdana">Passwort:<br> 
        <input class="searchbox" type="password" name="password" size="10" maxlength="25"> 
        </font><br> 
        <font size="1" face="Verdana">Auto Login: </font> 
        <font face="Verdana" size="1"><input class="text" type="checkbox" name="autologin"></font><br> 
      </td> 
    </tr> 
    <tr align="center"> 
      <td colspan="2"><font size="1" face="Verdana"><input type="submit" name="login" value="Login"></font></td> 
    </tr> 
    <tr align="center"> 
      <td colspan="2"><font face="Verdana"><span class="smalltext"> 
        <font size="1"> 
        <a href="profile.php?mode=sendpassword" class="smalllink">Passwort vergessen?</a></font></span><br> 
        <font size="1"> 
        <a href="profile.php?mode=register">Registrieren</a></font><font size="1">! 
        </font> 
        </font> 
      </td> 
    </tr> 
  </table> 
  <input type="hidden" name="redirect" value="test.php"> 
</form> 

<?php 
} 
?>
da ist eigentlich alles dabei was ich brauche nur ein Problem gibt es noch:
Geh ich jetzt auf "Logout" werde ich zum Forum weitergeleitet und dort steht dann "invalid session".
Was muss ich machen damit der Logout erfolgreich funktioniert?

Ich würde mich wirklich freuen wenn ihr mir helfen könntet.

Verfasst: 02.12.2007 18:12
von MasterPeas89
Also hab jetzt wieder nach ein bissel herumprobieren es selbst geschafft das Problem zu lösen, und zwar wie folgt (fals es jemanden interessieren sollte):

Man muss in der Codezeile

Code: Alles auswählen

<div class="nav"><font face="Verdana"><font size="1">:: </font> 
   <a class="nav" href="login.php?logout=true"> 
   <font size="1">Ausloggen</font></a></font> 
</div> 
es so ändern

Code: Alles auswählen

<div class="nav"><font face="Verdana"><font size="1">:: </font> 
   <a class="nav" href="login.php?logout=true&sid=<?=$userdata['session_id']?>"> 
   <font size="1">Ausloggen</font></a></font> 
</div> 
dann funzt es!

Jetzt hab ich aber trotzdem nochmal eine Frage und zwar: Wenn ich mich auslogge werde ich zum Forum weitergeleitet. Was muss ich machen das ich nicht aufs Forum sondern zu der normalen test.php weitergeleitet werde?

Wie gesagt ich würde mich freuen wenn mir mal jemand helfen würde!