Login/Logout
Login/Logout
Hallo,
ich möchte gerne einen Login/Logout Link in meiner Homepage Navigation einbauen.
Ich würde es aber gerne so haben:
Wenn man nicht eingeloggt ist, soll dort "Login" stehen und wenn man eingeloggt ist soll dort "Logout" stehen ...
... und das alles in HTML ...
Danke schonmal!
ich möchte gerne einen Login/Logout Link in meiner Homepage Navigation einbauen.
Ich würde es aber gerne so haben:
Wenn man nicht eingeloggt ist, soll dort "Login" stehen und wenn man eingeloggt ist soll dort "Logout" stehen ...
... und das alles in HTML ...
Danke schonmal!
Das solltest du in PHP lösen.
Wenn du Admidio korrekt in die Seite eingebunden hast kannst du das in deinem Menü so machen wie ich das gemacht habe.
Kann natürlich sein das es noch eine andere Lösung gibt aber das war die die ich für mich gefunden habe.So wird mir nämlich dann auch gleich noch mein name im Menü gezeigt
Falls du noch andere Werte in der Userbox dann zeigen willst wie deine E-Mailaddy dann kannst du das alles einsehen in der Profile.php im Modulverzeichnis.
mfg
Wenn du Admidio korrekt in die Seite eingebunden hast kannst du das in deinem Menü so machen wie ich das gemacht habe.
Code: Alles auswählen
if($g_current_user->login_name > "")
{
echo "<a href='/adm_program/system/logout.php'>Logout</a><br>";
echo $g_current_user->login_name;
}
else
{
echo "<a href='/adm_program/system/login.php'>Login</a><br>";
}
Falls du noch andere Werte in der Userbox dann zeigen willst wie deine E-Mailaddy dann kannst du das alles einsehen in der Profile.php im Modulverzeichnis.
mfg
Da ich nicht sehr viel Ahnung von php habe ...
Ich würde deine Variante gern auch auf meiner HP nutzen, müsste diesen Programmteil jedoch vom Layout her in der body_top.php unterbringen. Kannst du mir einen Tipp geben, was dazu dort ggf. noch ergänzt werden muss? Einfaches Einfügen führte (wie zu vermuten nicht zum Ziel.
Danke schon mal - Gruß Joesch
Ich würde deine Variante gern auch auf meiner HP nutzen, müsste diesen Programmteil jedoch vom Layout her in der body_top.php unterbringen. Kannst du mir einen Tipp geben, was dazu dort ggf. noch ergänzt werden muss? Einfaches Einfügen führte (wie zu vermuten nicht zum Ziel.
Danke schon mal - Gruß Joesch
Was ist drunter zu verstehen? Momentan habe ich Admidio in meine HP eingebunden und die Layoutmerkmale in der Body_top und body_bottom eingebunden. Das funktioniert so weit auch ganz gut. Welche config von Admidio muss jetzt wo relevant eingetragen werden?Rigo hat geschrieben:...wenn du vorher die config von admidio in deinen relevanten dateien eingefügt hast.
mfg
Gruß Joesch
Hi Joesch,
du kannst den Programmcode von Rigo schon in die body_top.php einfügen, allerdings musst du dabei noch ein paar Dinge beachten.
Standardmäßig bist du in jeder *.php Datei im "Html-Modus" und du muss dem Server sagen, dass jetzt PHP kommt. Dies geschieht mit den Tags Außerdem solltest du die Links besser absolut setzen.
Hier ist jetzt noch mal das angepasste Beispiel etwas eleganter gelöst:
Gruß
Fasse
du kannst den Programmcode von Rigo schon in die body_top.php einfügen, allerdings musst du dabei noch ein paar Dinge beachten.
Standardmäßig bist du in jeder *.php Datei im "Html-Modus" und du muss dem Server sagen, dass jetzt PHP kommt. Dies geschieht mit den Tags
Code: Alles auswählen
<?php ... jetzt kommt PHP-Code ... ?>
Hier ist jetzt noch mal das angepasste Beispiel etwas eleganter gelöst:
Code: Alles auswählen
<?php
if($g_session_valid == true)
{
echo "<a href='$g_root_path/adm_program/system/logout.php'>Logout</a><br>";
echo $g_current_user->login_name;
}
else
{
echo "<a href='$g_root_path/adm_program/system/login.php'>Login</a><br>";
}
?>
Fasse
Hallo,
wie kann man in php einen Text hinzufügen.
Also wenn man sich einloggt, dass dann direkt "Hallo name", anstatt nur "name" steht:
<?php
if($g_session_valid == true)
{
echo "<a href='$g_root_path/adm_program/system/logout.php'>Logout</a>";
echo (Hallo) $g_current_user->login_name;
}
else
{
echo "<a href='$g_root_path/adm_program/system/login.php'>Login</a>";
}
?>
wie kann man in php einen Text hinzufügen.
Also wenn man sich einloggt, dass dann direkt "Hallo name", anstatt nur "name" steht:
<?php
if($g_session_valid == true)
{
echo "<a href='$g_root_path/adm_program/system/logout.php'>Logout</a>";
echo (Hallo) $g_current_user->login_name;
}
else
{
echo "<a href='$g_root_path/adm_program/system/login.php'>Login</a>";
}
?>
Code: Alles auswählen
echo "Hallo ". $g_current_user->login_name;
Gruß
Fasse
Punkt dahinter und dann wieder Anführungszeichen.
Es müsste aber auch so klappen:
Code: Alles auswählen
echo "Hallo ". $g_current_user->login_name. "!";
Code: Alles auswählen
echo "Hallo $g_current_user->login_name!";
Login Logout
Haben diesen Code eingebunden (body_top.php). Jedoch funktioniert bei mir nicht. Es wird nur der LOGIN Link angezeigt obwohl eingeloggt.
Ich habe damit auch immer wieder mal Probleme und kann es mir nicht erklären.
Ich glaube da stimmt was nicht mit der Kontrolle ob jemand eingeloggt ist oder nicht. Oder vielleicht auch mit der common.php, die man nicht mehrmals auslesen kann. Ich weiß es nicht.
Ich wollte in dem sidebar online plugin auch rein schreiben, dass er es nur anzeigen soll, wenn der User Online ist, jedoch macht er das einfach nicht. Auch bewirkt die Variable "$plg_show_self = 0;" bewirkt bei mir keine Änderung, da auch hier die "$g_valid_login" benötigt wird und die ist ja leer.
Da ich das Sidebar Online Plugin in der my_body_bottom.php einbinden will habe ich dann nochmal versucht, die Abfrage vor dem includen zu machen, also:
Allerdings funktioniert das auch nicht.
Wenn ich mir $g_session_valid oder $g_valid_login ausgeben lasse, ist die Variable leer und ich kann mir einfach nicht vorstellen warum. Vielleicht wird Sie ja an einer Stelle einfach gelöscht, so dass man die Variable nicht mehrmals auslesen kann oder, keine Ahnung, weil sich die Adresse auch mal ändert. Ich weiß es einfach nicht.
Für einen Laien ist es aber ziemlich schwer, nach zu vollziehen wo der Fehler liegt, wenn es keinen sichtbaren Fehler gibt.
Die Variable ist einfach leer und wenn ich eine if-Abfrage mit "if ($g_session_valid == true)" mache, ist diese eben nicht true und er zeigt mir else an oder eben nichts.
Aber warum die Variable jetzt leer ist, kann ich nicht nach vollziehen.
Wäre echt schön, wenn die Admin bzw. die Entwickler hier nochmal schauen könnten.
Oder vielleicht sagen könnten woran es liegen kann.
Gruss
Dj
Ich glaube da stimmt was nicht mit der Kontrolle ob jemand eingeloggt ist oder nicht. Oder vielleicht auch mit der common.php, die man nicht mehrmals auslesen kann. Ich weiß es nicht.
Ich wollte in dem sidebar online plugin auch rein schreiben, dass er es nur anzeigen soll, wenn der User Online ist, jedoch macht er das einfach nicht. Auch bewirkt die Variable "$plg_show_self = 0;" bewirkt bei mir keine Änderung, da auch hier die "$g_valid_login" benötigt wird und die ist ja leer.
Da ich das Sidebar Online Plugin in der my_body_bottom.php einbinden will habe ich dann nochmal versucht, die Abfrage vor dem includen zu machen, also:
Code: Alles auswählen
<?php
if ($g_session_valid == true)
{
include($g_root_path."/adm_plugins/sidebar_online/sidebar_online.php");
} else {
echo "Nur wenn du angemeldet bist, kannst du sehen wer Online ist.";
}
?>
Wenn ich mir $g_session_valid oder $g_valid_login ausgeben lasse, ist die Variable leer und ich kann mir einfach nicht vorstellen warum. Vielleicht wird Sie ja an einer Stelle einfach gelöscht, so dass man die Variable nicht mehrmals auslesen kann oder, keine Ahnung, weil sich die Adresse auch mal ändert. Ich weiß es einfach nicht.
Für einen Laien ist es aber ziemlich schwer, nach zu vollziehen wo der Fehler liegt, wenn es keinen sichtbaren Fehler gibt.
Die Variable ist einfach leer und wenn ich eine if-Abfrage mit "if ($g_session_valid == true)" mache, ist diese eben nicht true und er zeigt mir else an oder eben nichts.
Aber warum die Variable jetzt leer ist, kann ich nicht nach vollziehen.
Wäre echt schön, wenn die Admin bzw. die Entwickler hier nochmal schauen könnten.
Oder vielleicht sagen könnten woran es liegen kann.
Gruss
Dj
Hallo DJ,
probiers mal hiermit:
Gruß Jochen
probiers mal hiermit:
Code: Alles auswählen
if ($g_valid_login)
{
include(SERVER_PATH.'/adm_plugins/sidebar_online/sidebar_online.php');
}
else
{
echo 'Nur wenn du angemeldet bist, kannst du sehen wer Online ist.';
}
Hääää? Es geht!!! Vielen Dank!!!
Aber warum?
Ich habe die if-Abfrage auch mit $g_valid_login getestet und da funktionierte es nicht.
Kannst du mir erklären, warum es jetzt geht?
Also, der einzige Unterschied ist jetzt im include, aber warum sollte es daran liegen?
Gruss
Dj
P.S.: Jetzt kann ich auch nochmal das plugin "loginbar" weiter machen und euch mal zukommen lassen.