Hi Experten,
Frage: ich habe da eine externe PHP Datei die am Server liegt.
Ich möchte darin den aktuellen FE-Username ausgeben lassen. Dafür logge ich mich ein und ich komme auf eine Seite wo ein Link diese externe PHP-Datei aufruft. darin steht u.a. folgender Script:
$MeinUsername=$GLOBALS["TSFE"]->fe_user->user["username"];
print "Ihr Username ist $MeinUsername";
Wenn ich sie nach dem Login aufrufe bekomme ich natürlich nur: "Ihr Username ist "
Was muss also in dieser PHP-Datei noch drin stehen damit der FE-Username aufgerufen werden kann? #paralyzed#
Ganz kapier ich das Problem nicht, mal sehen:
In einer TYPO3-Seite (Seite 1) loggt sich wer ein, klickt dort auf einen Link zu einer anderen Seite Seite 2), die extern, also nicht im aktuellen TYPO3 liegt und dort soll der Usernamen ausgeben werden?
Wenn ich das so richtig verstanden habe, dann schlag ich folgende Lösung vor:
erstell in deiner TYPO3-Seite (Seite 1) doch einen Link, der den Usernamen als GET oder besser POST-Parameter an die externe Seite (Seite 2) übermittelt...
Das sollte mit deinem PHP-Schnipsel funktionieren.
Vielleicht ist ja an einer anderer Stelle im Skript ein Fehler.
Versuch doch mal ne Datei, die nur folgenden Code enthält:
<?
echo $GLOBALS["TSFE"]->fe_user->user["username"];
?>
ist denn irgendwas von TYPO3 eingebunden? ich mein wie stellst du dir das vor, unabhängiges php file und dann aber die API von TYPO3 wollen?
@just2b:
Ups, ich bin von einer PHP-Datei, die per include eingebunden ist, ausgegangen.
Du hast natürlich Recht, dass das auf diesem Weg unmöglich funktionieren kann. ;-)
Spontane Idee:
Wenn es eine eigenständige PHP-Datei ist, die auf dem selben Server liegt, könnte man den Cookie fe_typo_user auslesen und den zur Session-ID passenden User aus der fe_sessions-tabelle ermitteln.
Cookie auslesen ginge so:
$cookie = $_COOKIE["fe_typo_user"];
DB-Abfrage:
$query="SELECT ses_userid FROM `fe_sessions` WHERE `ses_id` LIKE $cookie";
Somit hätte man die User-ID und könnte alle weiteren Daten aus der fe_users-Tabelle auslesen.
(nicht getestet!)
Hi Leute,
danke für die schnellen Antworten. Ich mus zugeben, ich bin kein PHP-Programmierer und noch weniger kenne ich mich mit Datenbanken aus. Ich kann mir das Cookie ausgeben lassen, aber wie ich dann den richtigen Username brkomme weiss ich dann schon nicht mehr.
Könnt Ihr mir bitte die paar Code-Schnipsel zeigen die ich dafür brauche?