Frontend-Benutzer-ID auslesen

Gesperrt
Putzi
Beiträge: 22
Registriert: Di 10. Mär 2009, 17:29
Kontaktdaten:

Frontend-Benutzer-ID auslesen

Beitrag von Putzi » Di 28. Jul 2009, 19:58

Hallo,

es tut mir echt leid, dass ich euch mit einer solchen Kleinigkeit belästige...
Die Suche im Forum und bei Google habe ich schon ausgenutzt, finde aber einfach nix passendes...

Ich mache gerade meine ersten Schritte in der Modul-Programmierung und suche nach dem Befehl, mit dem man die Benutzer-Id des aktuellen (eingeloggten) Frontend-Nutzers auslesen kann. Hab es schon mit "$user = $auth->auth[uid];" versucht und die Klasse "cInclude("classes", "class.frontend.users.php");" eingefügt, aber das funktioniert nicht...

Hat einer von euch genug Mitleid mit mir, um mir den Befehl zu sagen? :wink:

idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Re: Frontend-Benutzer-ID auslesen

Beitrag von idea-tec » Di 28. Jul 2009, 20:07

MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)

Putzi
Beiträge: 22
Registriert: Di 10. Mär 2009, 17:29
Kontaktdaten:

Re: Frontend-Benutzer-ID auslesen

Beitrag von Putzi » Di 28. Jul 2009, 20:34

Hallo Karsten,
danke dir, nur leider scheint bei mir noch irgendwo anders der Wurm drin zu sein: Der Befehl funktioniert nicht... :(
Muss ich um den Befehl nutzen zu können vorher noch irgendetwas initialisieren (z.B. $auth), oder ist da alles "automatisch" da?
Das Wiki ist an dieser Stelle leider auch nicht allzu aussagekräftig...

idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Re: Frontend-Benutzer-ID auslesen

Beitrag von idea-tec » Di 28. Jul 2009, 21:24

Schau dir das Login-Modul des Beispielmandanten an. ich meine mich zu erinnern, dass da irgendwas mit der $auth drinne ist.

ansonsten: berechtigte frage von dir, aber meine glaskugel ist grade in urlaub ;-)
MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Frontend-Benutzer-ID auslesen

Beitrag von Dodger77 » Mi 29. Jul 2009, 07:26

Verschoben, da eine Frage und nicht Tipp bzw. Trick.

Zum Thema: $auth muss nicht gesondert initialisiert sein. Evtl. geht es - zugegeben etwas umständlicher - über $auth->auth[uname]:

Code: Alles auswählen

cInclude('classes', 'class.frontend.users.php');

$frontendusers = new FrontendUserCollection;
$frontendusers->select("idclient = '$client' AND username = '".urlencode($auth->auth[uname])."'");
if ($frontenduser = $frontendusers->next()) {
    $idfrontenduser    = $frontenduser->get('idfrontenduser');
}

Putzi
Beiträge: 22
Registriert: Di 10. Mär 2009, 17:29
Kontaktdaten:

Re: Frontend-Benutzer-ID auslesen

Beitrag von Putzi » Mi 29. Jul 2009, 08:30

Hallo und Danke ihr beiden! :)

Das Problem hat sich mittlerweile gelöst... Es scheint so, dass die UID ausgelesen werden muss, während der Nutzer das Formular angezeigt bekommt.
Ich hatte versucht den Nutzer in einer Funktion nach dem Abschicken des Formulars zusammen mit den Formulardaten in der DB zu speichern und da war die uid immer leer...

Funktioniert jetzt jedenfalls und nochmals vielen Dank für die Hilfe - so konnte ich wenigstens ausschließen, dass ich den falschen Befehl erwischt bzw. irgendwas vergessen hatte. :)

Oldperl
Beiträge: 4251
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Frontend-Benutzer-ID auslesen

Beitrag von Oldperl » Mi 29. Jul 2009, 14:01

Hallo Putzi,
Putzi hat geschrieben:Ich hatte versucht den Nutzer in einer Funktion nach dem Abschicken des Formulars zusammen mit den Formulardaten in der DB zu speichern und da war die uid immer leer...
$auth ist global, und daher nicht automatisch in einer Funktion vorhanden. Entweder du übergibst $auth beim Aufruf der Funktion als Parameter, oder du machst $auth in der Funktion als globale Variable/Objekt bekannt.

Code: Alles auswählen

<?php
function meineFunktion() {
    global $auth;

    $UserId = $auth->auth['uid'];

    ....tue was sinnvolles...
}
Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Gesperrt