Wie so oft: Externer Login

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB2 oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Shay
Mitglied
Beiträge: 6
Registriert: 08.04.2008 20:33

Wie so oft: Externer Login

Beitrag von Shay »

Hallöchen =)

Im Vorfeld möchte ich mich dafür entschuldigen, dass ich warscheinlich der was weiß ich wievielte bin, der Rat zu diesem Thema braucht ^^' .
Ich habe schon sehr sehr viele Forenposts und sripts und weiß der Geier was getestet und gelesen aber ich komme irgendiwe nicht weiter.

Ich möchte auf meiner Homepage einen login machen, der die Daten bezüglich des Users aus der Forendatenbank ließt und anschließend den erfolgreiche eingeloggten Nutzer jedoch nicht auf die Forumsstartseite weiterleitet sondern zu einer selbst bestimmten Seite.
Wenn man dann über einen Link zum Forum gelangt soll man natürlich dort auch immernoch eingeloggt sein (am besten auch mit cookie oder so speichern das man sich nich jedes mal neu anmelden muss wenn man die homepage aufruft).
Wenn der login fehl schlägt soll auch ledigleich eine fehleranzeige wie falsches pw oder nutzername in dem homepage login angezeigt werden.

Ich habe mir bereits ein script gezogen, was erfolgreich die Daten aus der db abgleicht und einen zur gewünschten seite leitet, jedoch ist man dann nicht im forum angemeldet.

Wenns nicht zuviel arbeit ist ^^' würde ich dann gern auf der "eingeloggten seite" von dem Nutzer die neuen, ungelesenen Forenbeiträge anzeigen lassen, von denen er dann über einen Link im Namen zb auf den jeweiligen Post im Forum gelangt.


Nur noch als hinweis, ich bin absoluter php newbie udn versuche alles durch ausprobieren zu schaffen, also bitte kein fachchinesich ^^'

Shay
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17403
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Shay
Mitglied
Beiträge: 6
Registriert: 08.04.2008 20:33

Beitrag von Shay »

Hiho nochmal ^^

ich habs nun so halbwegs hinbekommen mit:

login_seite.htm

Code: Alles auswählen

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Benutzername</title>
</head>
<body>

<div style="position: absolute; width: 258px; height: 100px; z-index: 1; left: 25px; top: 273px" id="Ebene1">
<form action="login.php" method="post"> 
Login/Logout<p>Benutzername: <input type="text" name="username" size="13"><br> 
Passwort: 
<input type="password" name="password" size="13"><br> 
Autologin? <input type="checkbox" name="autologin"><br> 
<input type="hidden" name="redirect" value="sicher.htm">
<input type="submit" name="login" value="Login"> </p>
 
</form>


	<p>&nbsp;</div>

</body>

</html>
und die gesicherte Seite sicher.htm:

Code: Alles auswählen

<html>

<head>

<?php 
//Benoetigte 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); 
//fuer LogOut Button 
if ($_POST['ausloggen'] == 1){ 
$userdata = array(); 
$_SESSION = array(); 
} 
?>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Seite</title>
<?php 
if ( $userdata['session_logged_in'] && $postrow[$i]['post_time'] > $userdata['user_lastvisit'] && $postrow[$i]['post_time'] > $topic_last_read ) 
        { 
                $mini_post_img = $images['icon_minipost_new']; 
                $mini_post_alt = $lang['New_post']; 
        } 
        else 
        { 
                $mini_post_img = $images['icon_minipost']; 
                $mini_post_alt = $lang['Post']; 
        }
        
        ?>

</head>

<body>
<div style="position: absolute; width: 100px; height: 100px; z-index: 1; left: 22px; top: 215px" id="Ebene1">


<?php 
      if ($userdata['user_id'] == -1) 
      { 
              ?> 
                         <tr> 
                            
              <?php 
                 } 
                 else 
                 { 
              ?> 
                         <tr> 
                            <td>Logout</td> 
                         </tr> 
                         <tr> 

                           <td> 
                       <form action="login.php?logout=true&sid=<?php echo $userdata['session_id']; ?>" 
                                   method="post"> 
                <input type="hidden" name="redirect" value="login1.htm" /> 
            <input  type="submit" value="Logout"  /> 
                             </form><br> 
        <?php 
                 } 
              ?> 



</div> 
 


	<p>&nbsp;</div>
Seite 
                        


</body>

</html>
Soweit klappt alles, ich bleibe eingeloggt fürs Forum wenn ich mich über die eigene Loginseite einlogge und über den Logout der eigenen Seite auslogge.
Nur habe ich momentan das Problem, dass ich wenn ich wieder meine eigene loginseite aufrufe, wieder das loginfensterchen habe, also das er nicht erkennt das ich bereits eingeloggt bin und mich dann irgendwie automatisch schon auf die sicherre seite leitet. Wenn ich dann auf login klicke ohne Nutzerdaten einzugeben leitet er mich auf die sichere weiter, da erkennt er dann dass ich ja eigendlich schon eingeloggt bin.

Wäre schön wenn ihr mir da vll nochmal helfen könntet =)

Achja, was ich jetzt eigendlich brauch ne Abfrage ob ich eingeloggt bin oder nicht und dementsprechend auf die jeweilige Seite weitergeleitet werde ^^'
Antworten

Zurück zu „phpBB 2.0: Mod-Bastelstube“