Um einen User anhand von username und passwort per Code einzuloggen, kann man die Authentisierung auf folgende Weise durchführen:
FE Userlogin per Code
PHP
$loginData=array( 'uname' = 'johndoe', //usernmae 'uident'= 'mypassword', //password 'status' ='login' ); $GLOBALS['TSFE']->fe_user-checkPid=0; //do not use a particular pid $info= $GLOBALS['TSFE']->fe_user->getAuthInfoArray(); $user=$GLOBALS['TSFE']->fe_user->fetchUserRecord( $info['db_user'],$loginData['uname']); $ok=$GLOBALS['TSFE']->fe_user->compareUident($user,$loginData); if($ok) { //login successfull $GLOBALS['TSFE']->fe_user->createUserSession($user); } else { //login failed }
von Nikolas Hagelstein

Impressum
Mollio

12 >>
Seite 1 von 2
ohhh... God... you saved my life...
its working...
i translated your page and found the solution....
thank you very much...
Regards,
sridhar
india
Dieses snippet hat letztendlich für mich funkioniert: typo3.toaster-schwerin.de/typo3_english/2007_10/msg00006.html
Hallo Steffen,
herzlichen Dank für den guten Artikel. Gibt es eine Möglichkeit, diesen Code auch aus einem Scheduler-Skript heraus auszuführen? Hier besteht ja leider kein feUser...
Vielen lieeben Dank für eine kurze Nachricht.
Und wie sieht das Ganze aus, wenn eine MD5-Verschlüsselung dazwischen hängt?
Weißt du, wo man den Challenge-Code herbekommt?
Schau dir mal die Funktion checkPassword in der Extension datamintesfeuser an!
Mit demselben Problem hatte ich heute auch zu kämpfen. Ich habe es in TYPO3 4.3.3 zum Laufen gebracht, indem ich noch diese Zeilen ergänzt habe:
$GLOBALS['TSFE']->fe_user->user = $GLOBALS['TSFE']->fe_user->fetchUserSession();
$GLOBALS['TSFE']->fe_user->fetchGroupData();
Vorsicht! fetchUserSession() gibt einen Array zurück, fetchGroupData() irritierenderweise aber einen Integer-Wert.
Bei Bedarf musst du auch noch die $GLOBALS['TSFE']->gr_list umschreiben, damit nur die Inhalte angezeigt werden, die der eingeloggte Benutzer sehen darf.
Hallo zusammen,
unter TYPO3 4.2 funktionierte der Login mit dem Code super. Leider tut er das jetzt unter 4.3 nicht mehr. Hat jemand eine neue Lösung dafür?
Danke und viele Grüße
Hallo zusammen,
DANKE für diesen wunderbaren Snippet!
Ein paar kleine Tippies habe ich noch gefunden:
Bei der Arrayzuweisung => statt =
und
$GLOBALS['TSFE']->fe_user->checkPid=0;
statt
$GLOBALS['TSFE']->fe_user-checkPid=0;
(Größer-Zeichen vor checkPid=0)
Beim "Copy & pasten" bitte auf Zeilenumbruch achten.
Vorher liefs bei mir nicht.
Viele Grüße
Uwe
Hallo zusammen,
das scheint genau der Code zu sein, nach dem ich gesucht habe.
Möchte gerne jeden Besucher der nicht schon unter seinem eigenen Benutzernamen angemeldet ist als Gast (in felogin) automatisch anmelden.
Könnt ihr mir netterweise nen Tipp geben wo genau ich den Code einbauen muss?
Dank&Gruß
Tom
Fast perfekt, nicolas mit "k"
.
sollst Du haben
Wie kann ich mir dann im PHP-Code den Usernamen ausgeben lassen?
Geht das mit $GLOBALS["TSFE"]->fe_user->user['username'];
Oder muss ich irgendwo noch was definieren?