Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Login / Logout
#1
Ich habe da mal ne Frage:

Habe in meinem Forum in der Navileiste (Suche, Mitglieder, Hilfe...) nen Icon eingefügt zum ausloggen, wenn ein Mitglied angemeldet ist.

Nun ist mir aufgefallen, dass dieses Icon auch da ist, wenn ich als Gast auf dem Forum bin. Wie kann ich das schreiben, dass wenn ich als Gast da bin dann mein Login-Icon steht und ich mich bei klick dann anmelden kann...

Liebe Grüße
Liebe Grüße der Marceau
Zitieren
#2
Du musst in die Datei global.php folgenden Code einfügen, bevor das Template header geladen wird:
PHP-Code:
if($mybb->user['uid'] != "0") {
    
$login_out "<img src=\"images/logout.gif\" border=\"0\" alt=\"Logout\" title=\"Logout\" /> Abmelden";
} else {
    
$login_out "<img src=\"images/login.gif\" border=\"0\" alt=\"Logoin\" title=\"Login\" /> Anmelden";

Danach musst du die Variable $login_out im Template header an die Stelle setzen, an der der Link erscheinen soll.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#3
Hmmm wo fängt es denn an, bzw ab wo wird denn der Header geladen!? Hab da noch nicht so viel Ahnung... Sad


PHP-Code:
// Load Main Templates and Cached Templates
if($templatelist)
{
    
$templatelist .= ",";
}
$templatelist .= "css,headerinclude,header,footer,gobutton,htmldoctype,header_welcomeblock_member,header_welcomeblock_guest,header_welcomeblock_member_admin";
$templatelist .= ",header_toplinks_weblogs,header_toplinks_gallery,header_toplinks_shoutbox,header_toplinks_arcade";
$templatelist .= ",nav,nav_sep,nav_bit,nav_sep_active,nav_bit_active";
$templatelist addslashes($templatelist);
$templates->cache($templatelist); 

ist das hier???
Liebe Grüße der Marceau
Zitieren
#4
Der Code muss vor dieser Zeile eingefügt werden:
PHP-Code:
eval("\$header = \"".$templates->get("header")."\";"); 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#5
Michael schrieb:Danach musst du die Variable $login_out im Template header an die Stelle setzen, an der der Link erscheinen soll.

code habe ich eingesetzt...
wenn ich jetzt die Variable in den Header einfach nur einsetze wird es auch so angezeigt, aber wie muss das bei dem Link aussehen?

PHP-Code:
//Das ist der Code für den Login
<a href="$settings[bburl]/member.php?action=login">$lang->welcome_login</a>

//uns das für den Logout
<a href="$settings[bburl]/member.php?action=logout&amp;uid=$mybbuser[uid]">$lang->welcome_logout</a

Aber wo muss ich die Variable $login_out jetzt einsetzen...!? *grml
Liebe Grüße der Marceau
Zitieren
#6
Die Links musst du in den PHP-Code einsetzen:
PHP-Code:
if($mybb->user['uid'] != "0") {
    
$login_out "<li><a href=\"".$settings[bburl]."/member.php?action=login\"><img src=\"images/logout.gif\" border=\"0\" alt=\"Logout\" title=\"Logout\" /> ".$lang->welcome_login."</a></li>";
} else {
    
$login_out "<li><a href=\"".$settings[bburl]."/member.php?action=logout&amp;uid=".$mybbuser[uid]."\"><img src=\"images/login.gif\" border=\"0\" alt=\"Login\" title=\"Login\" /> ".$lang->welcome_logout."</a></li>";

Anschließend fügst du die Variable im Template header an die Stelle der Navigation ein, an der der Link erscheinen soll.

Beispiel:
Code:
<li><a href="$settings[bburl]/search.php"><img src="$theme[imgdir]/toplinks/search.gif" border="0" alt="$lang->toplinks_search" />$lang->toplinks_search</a></li>
[b]$login_out[/b]
<li><a href="$settings[bburl]/memberlist.php"><img src="$theme[imgdir]/toplinks/memberlist.gif" border="0" alt="$lang->toplinks_memberlist" />$lang->toplinks_memberlist</a></li>
Hier würde der Link zwischen "Suche" und "Mitglieder" ausgegeben.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#7
okay ich danke dir. Musste zwar noch if($mybb->user['uid'] != "0") auf "1" setzen, da es irgendwie genau andersherum war...aber jetzt funktioniert alles.

Ich danke dir... Wink
Liebe Grüße der Marceau
Zitieren
#8
Bitte verwende:
PHP-Code:
if($mybb->user['uid'] == "0") { 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#9
Okay, aber worin lag jetzt der unterschied ? Drückt das letztendlich nicht das Selbe aus !?
Liebe Grüße der Marceau
Zitieren
#10
PHP-Code:
if($mybb->user['uid'] != "0"
Wenn User-ID nicht 0, dann... Die Aktion wird also für alle Benutzer ausgeführt, die kein Gast (ID = 0) sind.
PHP-Code:
if($mybb->user['uid'] != "1"
Wenn User-ID nicht 1, dann...Die Aktion wird für alle Benutzer ausgeführt, die nicht die Benutzer-ID 1 haben (macht wenig Sinn)
PHP-Code:
if($mybb->user['uid'] == "0"
Wenn User-ID 0, dann... Die Aktion wird also für alle Benutzer ausgeführt, die als Gast (ID = 0) im Forum unterwegs sind.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren