Login/Logout

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

suche

Code: Alles auswählen

echo "Hallo ".$userdata['username']." <a href="<?= append_sid('login.php?logout=true&sid='.$userdata['session_id']); ?>">Logout</a>"; 
ersetze mit:

Code: Alles auswählen

$username = $userdata['username'];
$link = append_sid('login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']);
echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>';
EDIT:
Und ja es müsste funktionieren :wink:
FarChris
Mitglied
Beiträge: 1150
Registriert: 29.10.2004 22:40

Beitrag von FarChris »

hi, das sieht nun so aus:

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);

//Session auslesen und Benutzer-Informationen laden
if ( $userdata['session_logged_in'] )
{
$username = $userdata['username'];
$link = append_sid('login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']);
echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>';
}
else
{
    // Code, wenn kein Benutzer angemeldet ist
        echo "
    <form action=\"board/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=\"index.php\">
    <input type=\"submit\" name=\"login\" value=\"Login\">
    </form>";


} 

?>
der Fehler ist nun weg, aber
wenn man sich einloggt und wieder auf die Hauptseite geht, funktioniert es nicht, also dann kommt nicht Hallo <username> sondern das normale einlog Fenster
FarChris
Mitglied
Beiträge: 1150
Registriert: 29.10.2004 22:40

Beitrag von FarChris »

Ich würde es gerne so haben:

Hallo Gast: Login ( wenn man da drauf klickt, soll man zur login.php des Forum verbunden werden)

Wenn man nun eingeloggt ist, soll folgendes erscheinen.

Hallo <username> Logout

ich habe hier mal den Code gefunden, aber wie bekomme ich diese Variabeln in die Datei?
<a href="{U_LOGIN_LOGOUT}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_login.gif" width="12" height="13" border="0" alt="{L_LOGIN_LOGOUT}" hspace="3" />{L_LOGIN_LOGOUT}</a>
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Reinbekommen gar nicht, das müsstest du dann über das Templatesystem machen :wink:

Aber so ungefähr siehts dann aus auch ohne diese Variabeln:

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); 

//Session auslesen und Benutzer-Informationen laden 
if ( $userdata['session_logged_in'] ) 
{ 
$username = $userdata['username']; 
$link = append_sid('login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']); 
echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>'; 
} 
else 
{ 
echo '<b>Hallo</b> Gast, <a href="'. append_sid($phpbb_root_path . "login.".$phpEx) .'">Login</a>';
} 

?>
FarChris
Mitglied
Beiträge: 1150
Registriert: 29.10.2004 22:40

Beitrag von FarChris »

So, es funktioniert.
Aber wenn ich mich eingelogt habe, steht dort immernoch Hallo Gast Login
und meine Login.php ist in board/login.php.
Wie kann ich den Code so umändern, das es richtig ist?
Riccardo112
Mitglied
Beiträge: 30
Registriert: 07.06.2005 21:49
Wohnort: Berlin

noch mal aufgewärmt

Beitrag von Riccardo112 »

Sorry, dass ich den alten Kaffee noch mal auswärme, aber ich hab ein grundsätzliches Problem mit der Verknüpfung von HTML und PHP.

Ich hab HTML mal gelernt und kann dazu auch noch ein paar Broken JavaScript. Das phpbb Forum war für mich ziemlich Neuland, kann aber inzwischen nach viel rumbasteln den Code halbwegs lesen und verstehen. Das meiste hab ich mir durch den Einbau witerer MODS angeeignet, aber mein nächstes Anliegen überfordert mich doch etwas.

Ich hab die genannten Artikel in der Knowlegde base gelsen muss aber gestehen, dass ich sie nicht verstehe.

Eine html Seite baut sich ja grunsätzlich nach dem html gerüst auf. Wie ich schon mitgekriegt habe, steht der php text dann meistens im <head>. Richtig?

Den Code über den ihr hier sprecht, wo schreibt man den hin? Wie komme ich überhaupt von einer HTML Seite zu den php Inhalten? Den <form>Tag schreibe ich samt inhalt in das html-document, schon klar, aber was machen die Attribute action und method? Genauso unklar ist mir der inputtype hidden. kann ich da irgendwie auf die nächste Seite verlinken?

-------------------------------------------
Ich frage aus folgendem grund:
Ich will eine Downloadpage einrichten, auf die nur Mitglieder zugriff haben. die angemeldet sind, daher die Linkreihenfolge: Menu Downloads -> Login (kann ruhig erneutes Login sein, mir egal) -> Downloads Area, mit evtl. LogoutLink.

Wie muss ich das anstellen? Irgendwann würde ich dann auch gerne die Mitglieder festlegen, die Zugang haben sollen, d.h. nicht jeder, der sich anmeldet kann dann auch sofort in den Download-Bereich reinmarschieren.

Ich hoffe, ich komme jetzt nicht in dem Stil rüber Bitte helft mir, ich weiß nicht was ich machen soll.
Hat alles Zeit. Erstmal muss ich rauskriegen, warum die postings bei mir plötzlich immer in der Autorenspalte stehen und die eigentliche Spalte für Nachrichten leer bleibt. Hab da auch noch nicht so den Durchblick.

bis dann...[/i]
NuQDuj
Mitglied
Beiträge: 11
Registriert: 19.04.2006 23:58
Wohnort: Germering

Daten werden nach code nicht weitergegeben

Beitrag von NuQDuj »

Hallo erstmal,

Nach dem Einbau des code's werden meine eigenen vars nicht mehr weitergegeben :(

"URL: meineseite.de?daten=1&daten2=2"

Daten vorhanden "1, 2":grin:

dann der Code

//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);


und ab hier sind sie weck

Daten nicht mehr da? "," :(

Kann mir bitte jemand helfen


Danke
Diezel
Mitglied
Beiträge: 8
Registriert: 11.06.2006 18:46

Beitrag von Diezel »

Heissen deine Variablen auch $daten1 und $daten2 (bzw. $_REQUEST["daten1"]) oder so?
Oder hast du vll zufällig einen Variablenname aus phpbb benutzt?!?
http://www.modding-mag.com - Hardware und Modding Magazin
JHO-Clan

Beitrag von JHO-Clan »

Mal die warsch. einfachste Variante:

Wenn du das mit
session_start(); machst,
dann leg nach dem Login einfach
$_SESSION['status'] = "logged_in"; oder so fest.
Dann schreib in deinem Linkbereich
session_start();
$status = $_SESSION['status'];
if ($status = "logged_in") {
echo "-----logout----...usw."; }
else {
echo "----Login-----usw.": }

PS.: So in der Art habe ich es bei mir gemacht.
NuQDuj
Mitglied
Beiträge: 11
Registriert: 19.04.2006 23:58
Wohnort: Germering

Beitrag von NuQDuj »

Das sind nur Muster Variablenname um zu zeigen, ab wann und wie der Fehler auftritt.
Diezel hat geschrieben:Heissen deine Variablen auch $daten1 und $daten2 (bzw. $_REQUEST["daten1"]) oder so?
Oder hast du vll zufällig einen Variablenname aus phpbb benutzt?!?
Die varis werden schon per url weitergegeben, doch nach der initiallisierung von PHPBB sind Sie nicht mehr verfügbar. :(
Das Forum geht, auch login oder logout auf allen anderen Seiten, doch der inhalt meiner seiten wird nicht mehr dargestellt da die benötigten Daten nicht mehr ankommen???
Antworten

Zurück zu „Coding & Technik“