Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Anfängerfragen ›

[gelöst] Speichern eines Benutzers: Vorherige Werte

Eingetragen von begs (87)
am 25.08.2011 - 12:42 Uhr in
  • Anfängerfragen
  • Drupal 7.x oder neuer

Hi und hallo,
ich brächte beim Speichern eines Benutzers die Werte, die der Benutzer vor dem Speichern in seinem Formular eingetragen hatte.

Also wenn er z.B. seine Mailadresse von test@web.de auf test1@web.de geändert hat, bräuchte ich sowohl den alten, als auch den neuen Wert.

Ich hatte da jetzt auf den "hook_user_presave(&$edit, $account, $category)" gehofft, aber leider stehen da die alten Werte nicht verlässlich drin.
Denn wenn ein Administrator die Benutzerdaten ändert, stehen ja in $account die Daten des Admins und nicht des Users drin...

Weiß hier jemand Rat?

‹ Seite erstellen und in Navigation anzeigen lassen checkboxes ausgeben aus einem assoziativen array ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Was mir jetzt auf anhieb

Eingetragen von erochard (29)
am 25.08.2011 - 13:30 Uhr

Was mir jetzt auf anhieb einfallen würde ist , du könntest sobald der user sein Formular editieren will es mit form_set_cache im cache speichern und mit $expire kannste ja festlegen wie lange die kopie vorhanden bleiben soll .

  • Anmelden oder Registrieren um Kommentare zu schreiben

hi begsdie userid von dem

Eingetragen von 1kubik (903)
am 25.08.2011 - 13:47 Uhr

hi begs

die userid von dem user befindet sich vermutlich
in dem $edit array.

mit dem kannst du dann in der
hook_user_presave
auf die users tabelle eine abfrage machen
um die email zu bekommen.

so ungefähr könnte das aussehen

ich vermute mal das das so aussieht in der
$edit->uid;
also kannst du das in einer abfrage verwenden:

<?php

    $res
= db_query ( 'SELECT mail FROM {users} WHERE uid = :uid', array (':uid' => $edit->uid ) );

// ausgabe zum testen
//wenn du devel installiert hast                            
dsm($res->mail);
// ansonsten sowas
drupal_set_message($res->mail);

?>

is ohne gewähr habs nich getestet...
nur so zum richtungshinweis

viel erfolg
stef

  • Anmelden oder Registrieren um Kommentare zu schreiben

1kubik schrieb hi begs die

Eingetragen von begs (87)
am 25.08.2011 - 13:59 Uhr
1kubik schrieb

hi begs

die userid von dem user befindet sich vermutlich
in dem $edit array.

mit dem kannst du dann in der
hook_user_presave
auf die users tabelle eine abfrage machen
um die email zu bekommen.

so ungefähr könnte das aussehen

ich vermute mal das das so aussieht in der
$edit->uid;
also kannst du das in einer abfrage verwenden:

<?php

    $res
= db_query ( 'SELECT mail FROM {users} WHERE uid = :uid', array (':uid' => $edit->uid ) );

// ausgabe zum testen
//wenn du devel installiert hast                            
dsm($res->mail);
// ansonsten sowas
drupal_set_message($res->mail);

?>

is ohne gewähr habs nich getestet...
nur so zum richtungshinweis

viel erfolg
stef

Das ist eine sehr gute Idee. Ich sehe gerade, dass "nur" $edit["name"], also der Benutzername, im $edit Array steht, aber darüber müsste ich eigentlich verlässlich die Daten bekommen.

Vielen Dank an Euch beide!

  • Anmelden oder Registrieren um Kommentare zu schreiben

.. Zitat: Ich sehe gerade,

Eingetragen von 1kubik (903)
am 25.08.2011 - 14:00 Uhr

..

Zitat:

Ich sehe gerade, dass "nur" $edit->name, also der Benutzername, im $edit Array steht, aber darüber müsste ich eigentlich verlässlich die Daten bekommen.

ja genau, der user name wird unique, also einzigartig in der datenbank
angelegt

vg
stf

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 4 Wochen 11 Stunden
  • Vielen Dank für Ihren
    vor 4 Wochen 3 Tagen
  • Composer ist sehr ratsam
    vor 4 Wochen 5 Tagen
  • Vielen Dank für den
    vor 5 Wochen 14 Stunden
  • Die alten CMS Vergleiche von contentmanager.de
    vor 5 Wochen 1 Tag
  • Gut gemacht
    vor 5 Wochen 1 Tag
  • Layout Builder etc. z.B. für Landing Pages
    vor 5 Wochen 1 Tag
  • Links
    vor 5 Wochen 3 Tagen
  • Moin,wow, sehr gutes
    vor 5 Wochen 4 Tagen
  • Dass ist eine spannende
    vor 5 Wochen 5 Tagen

Statistik

Beiträge im Forum: 250316
Registrierte User: 20566

Neue User:

  • Robertspaft
  • drupalthemes
  • rofilm

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 19 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association