Ergebnis 1 bis 14 von 14

Thema: Benutzer bearbeiten

  1. #1
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard Benutzer bearbeiten

    Hallo zusammen,

    ich komm hier grad nicht weiter.
    Ich habe eine Funktion die mir den Benutzer abändern soll.

    PHP-Code:
    public static function updateMember($objMember)
        {
           
            
    $objMember->firstname 'firstname';
            
    $objMember->lastname  'lastname';
            
    $objMember->company   'company';
    .....

            
    $objMember->save();
        } 
    $objMember ist der aktuell angemeldeter Benutzer.

    Wenn ich dann im Backend mir den Benutzer anschaue, wurde keine Änderung vorgenommen.
    Wenn ich jetzt nach
    PHP-Code:
    $objMember->save(); 
    ein exit einbaue, wird die Änderung vorgenommen.

    Was mach ich da falsch?

    Vielen Dank für Hinweise.

  2. #2
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Benutzer oder Mitglied?
    Und wurde dieser Benutzer/Mitglied auch über das Model geladen, da ansonsten das ->save() nicht funktioniert
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  3. #3
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard

    Sorry, es geht um Mitglieder.

    Ja wurde über das Model geladen.
    PHP-Code:
    public function checkCredentialsHook($strUsername$strPasswordUser $objUser)
        {
            
    $objMember MemberModel::findByPk($objUser->id);
    .....


  4. #4
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Sollte eignetlich funktionieren. Prüf das mal auf DB Ebene ob die Änderungen geschrieben werden.
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  5. #5
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard

    Im Backend sind bei dem Mitglied die alten Daten hinterlegt.

    Oder wie meinst du das mit auf DB Ebene prüfen.

  6. #6
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Na schau doch einfach mal in deine MySQL Datenbank ob sich der Datensatz geändert hat nachdem du den Code ausgeführt hast. Ich hab schon mit Experten zu tun gehabt, die haben immer auf "Speichern" geklickt und sich gewundert, warum sich der Datensatz nicht ändert ;-)
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  7. #7
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard

    Ne Datensatz wird nicht geändert

  8. #8
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Wird denn die Methode überhaupt aufgerufen? Setz dir doch mal zwischendrin ein paar "die();" um zu schauen ob dien Script bis zu einer bestimmten Stelle läuft.......
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  9. #9
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard

    ja die Methode wird durchgeführt.
    Wenn ich nach dem $objMember->save(); ein exit; einbaue, wird der Datensatz auch geändert.

  10. #10
    Contao-Fan Avatar von PaddySD
    Registriert seit
    26.10.2016.
    Ort
    Andechs
    Beiträge
    656

    Standard

    Wenn es mit "exit" geht, kann das ja nur heissen, dass Deine Methode zwar ausgeführt, aber danach noch von woanders überschrieben wird.

    Mein Verdacht geht in Richtung des aufrufenden Callbacks...

  11. #11
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Ah ok, das mit dem "exit" hab ich oben im ersten Beitrag überlesen. Vermute ebenfalls, dass der checkCredentials nicht unbedingt gut geeignet ist um am Mitglied selbst was zu ändern, sondern um anderweitige Zugangsdaten zu prüfen.

    Vielleicht wäre der HOOK importUser besser geeignet bzw. postLogin (sofern es die Mitglieder auch tatsächlich gibt).
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  12. #12
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard

    Wie kann ich rausfinden was danach noch ausgeführt wird?

    Naja ich prüfe zuerst am Ldap ob der Benutzer zugriff hat. Danach sollen noch paar Daten geändert werden.
    Hierzu brauche ich schon den Hook checkCredentials

  13. #13
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Ausprobieren oder in der Klasse nachlesen wann etwas ausgeführt wird.
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  14. #14
    Contao-Fan
    Registriert seit
    16.11.2012.
    Ort
    Freiburg
    Beiträge
    539

    Standard

    mit dem Hook postLogin funktioniert es. Danke euch

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •