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 - 11: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 - 12: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 - 12: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 - 12: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 - 13: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

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 2 Wochen 1 Tag
  • Textboxen mit Tabelle
    vor 2 Wochen 1 Tag
  • Du sollst ja auch keine
    vor 2 Wochen 1 Tag
  • Theme
    vor 2 Wochen 1 Tag
  • Welches Theme benutzt du
    vor 2 Wochen 1 Tag
  • Mit Responsive Raster hatte
    vor 2 Wochen 2 Tagen
  • Hallo Alex,um das Häkchen
    vor 2 Wochen 2 Tagen
  • Modul view_unpublished
    vor 2 Wochen 4 Tagen
  • Modul "override node options"
    vor 2 Wochen 4 Tagen
  • Im Grunde ist dass ein
    vor 3 Wochen 1 Stunde

Statistik

Beiträge im Forum: 250270
Registrierte User: 20478

Neue User:

  • Stevebok
  • Robertnobia
  • AltonRaf

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 10 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