PHP Gast (if) abfrage in Script integrieren

XXO1989

Lieutenant
Registriert
Mai 2008
Beiträge
671
Hi Computerbaseler,
ich brauche wiedermal Eure Hilfe.

Ich würde gerne auf unserer Homepage, die Willkommens-Schrift mit einer php Benutzer abfrage ausstatten.

Dieses Script zeigt den Aktuell eingeloggten Benutzer an.
PHP:
<?php $user = &JFactory::getUser();
$name = $user->get('username');
echo $name; ?>

Ich würde in dieses Script gerne noch eine Gast abfrage einbauen.

Beschreibung:
Wenn der Benutzer nicht eingeloggt ist, kommt folgender Text:
Lieber Gast, herzlich willkommen auf unserer Clanseite.

Wenn der Benutzer eingeloggt ist, kommt dieser Text.
Lieber (Benutzername), herzlich willkommen zurück auf unserer Clanseite.


Vielleicht mag mir jemand dieses Script schreiben?


MfG
XXO1989
 
Zuletzt bearbeitet:
Ein bisschen mehr Info drumherum wäre gut. Nur der PHP Text reicht da nicht aus.
 
Warum zusätzliche Infos, müsste es nicht so gehen:

PHP:
<?php $user = &JFactory::getUser();
$name = $user->get('username');
if($name == null || $name == "") // Je nachdem was getUser() zurückliefert ...
echo "Lieber Gast, herzlich willkommen auf unserer Clanseite."
else
echo "Lieber ".$name.", herzlich willkommen zurück auf unserer Clanseite.";?>

?
 
#Yuuri
Wie das Script genau funktioniert, kann ich leider nicht sagen, da ich von php 0 Ahnung habe.

Es fragt ab ob ein Benutzer angemeldet ist, wenn ja wir der Name aus der Datenbank geladen, wenn nicht bleibt das Feld leer.


Ich habe mir gedacht, man könnte so eine Art if abfrage dafür benutzen:

<?php
$a = Gast;
$b = (PHP-abfrage-code);

if ($a (ich weiß nicht welches Zeichen auf Existenz prüft) $b)
{
echo "Ausgabe 1";
Lieber $a, herzlich willkommen auf unserer Clanseite.
}

echo "Ausgabe 2";
Lieber $b, herzlich willkommen zurück auf unserer Clanseite.
}
?>


MfG
XXO1989
Ergänzung ()

#sebbolein
Das Script funktioniert leider nicht. (Serverfehler)

Zu sagen wäre noch, die Webseite basiert auf Joomla 2.5, und die PHP-Datei binde ich über jumi:
{jumi [components/com_jumi/files/willkommens-text.php]}
ins Seitenüberschrift´s Feld ein.

Ich habe das mit einer anderen PHP-Datei überprüft und es wurde alles ausgegeben.
 
Dabei handelt es sich wohl um den Teil einer Joomla Klasse (JFactory::getUser) und dort wird auch beschrieben, wie man den Loginstatus abfragt. Der folgende Code sollte also funktionieren:

Code:
<?php $user = &JFactory::getUser();
if (!$user->guest) {
    echo "Lieber " . $user->username . ", herzlich willkommen zurück auf unserer Clanseite.";
} else {
    echo "Lieber Gast, herzlich willkommen auf unserer Clanseite.";
}?>
 
@ sebbolein: Steht "Lieber ..." vor dem PHP Code in HTML? Mittels PHP? Kommt es aus der Datenbank? Gibt es verschiedene Sprachen? Sonst irgendwelche Seiteneffekte?

Irgendwas hinschreiben, wovon ich denke, dass es klappt, kann ich auch.
Code:
// Je nachdem was getUser() zurückliefert ...
Sagt ja schon alles, vor allem wenn der TE gar keine Ahnung von PHP hat. Vielleicht gibt getUser() ein Array mit ID und Usernamen zurück, vielleicht ein Objekt, was mittels __toString() evaluiert wird.

Ich könnte weiter machen...

edit: Und bumms, gibts wohl ein Objekt zurück und keinen String, kein Array oder sonstwas.
 
#Karol_
Vielen vielen Dank, ihr seit die besten :)

Falls Interesse am Ergebnis besteht: Link
Ergänzung ()

Ich habe noch eine ergänzende Frage.

Ich würde die Ausgabe gerne Zentrieren und hab auch schon verschiedene Methoden versucht . Leider bekomme ich immer einen Server Fehler.


Was mache ich Falsch?

PHP:
<?php $user = &JFactory::getUser();
if (!$user->guest) {
    echo <p align="center">"Lieber " . $user->username . ", herzlich willkommen zur&uuml;ck auf unserer Clanseite."</p>;
} else {
    echo <p align="center">"Lieber Gast, herzlich willkommen auf unserer Clanseite."</p>;
}?>
Ergänzung ()

Danke (Karol_)


PHP:
<?php $user = &JFactory::getUser();
if (!$user->guest) {
echo '<p align="center">Lieber ' . $user->username . ', herzlich willkommen zur&uuml;ck auf unserer Clanseite.</p>';
} else {
echo '<p align="center">Lieber Gast, herzlich willkommen auf unserer Clanseite.</p>';
}?>
 
Zurück
Oben