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

  • [gelöst]Vermaledeite Feeds
  • кракен сайт кто владелец
  • Rolle erstellen nicht zu finden
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • 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
  • Composer nach Umzug
Weiter

Neue Kommentare

  • кракен маркетплейс форум
    vor 1 Stunde 47 Minuten
  • Rollen
    vor 8 Stunden 44 Minuten
  • Inzwischen sind wir bei
    vor 1 Woche 4 Tagen
  • Migrieren von D7 auf D8/ D10/ D11
    vor 1 Woche 4 Tagen
  • melde mich mal wieder, da ich
    vor 9 Wochen 1 Tag
  • Hey danke
    vor 9 Wochen 2 Tagen
  • Update: jetzt gibt's ein
    vor 9 Wochen 3 Tagen
  • Hallo, im Prinzip habe ich
    vor 10 Wochen 20 Stunden
  • Da scheint die Terminologie
    vor 10 Wochen 23 Stunden
  • Kannst doch auch alles direkt
    vor 10 Wochen 5 Tagen

Statistik

Beiträge im Forum: 250239
Registrierte User: 20464

Neue User:

  • Tawer3sowar
  • ocvk2810
  • marouane.blel

» Alle User anzeigen

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