[gelöst] Zugriff auf UID in Computed während Registrierung
Eingetragen von Hoamer (22)
am 11.03.2012 - 17:51 Uhr in
am 11.03.2012 - 17:51 Uhr in
Guten Abend,
nach vielen vielen Stunden, welche nicht nur dieses Wochenende auf dem Gewissen haben, bin ich am Ende.
Zuerst sollte es per Rules gelöst werden, allerdings erhält man beim "Setzen von einem Wert" den Fehler "Integrity Violation" -> Link zum Thema
Aus diesem Grund würde ich es gerne per Computed Field lösen.
Undzwar soll ein Wert aus der Datenbank gelesen und im Computed Field genutzt werden. Für diesen Wert benötige ich während der Registrierung die user id (im Computed Field) des zu erstellenden Benutzers.
dsm
sowie
global $user;
$uid = $user->uid;
$user_data = user_load($uid);
print_r($user_data);
zur Ausgabe der Werte halfen hier auch nicht weiter.
Ich bedanke mich für jede Hilfe.
Viele Grüße
Hoamer
- Anmelden oder Registrieren um Kommentare zu schreiben
Hallo Hoamer,Zitat:während
am 11.03.2012 - 18:49 Uhr
Hallo Hoamer,
während der Registrierung
hat der User überhaupt schone eine ID ?
Ist dein Computed Field in einem neuem Formular ?
EDIT:
<?php
global $user;
$entity_field[0]['value'] = $user->uid;
?>
Lt. http://drupal.org/node/126522 müsstest duim Feld nun die uid bekommen ...
Sepp
also in drupal 6 hat er da
am 11.03.2012 - 19:16 Uhr
also in drupal 6 hat er da noch keine. aber nach der registrierung. mit rules: ereignis nach node erstellung (mit content profile9 oder nach user registrierung feld setzn
C.A.W. Webdesign
hm,global
am 12.03.2012 - 12:55 Uhr
hm,
global $user;
$entity_field[0]['value'] = $user->uid;
scheint sich laut
global $user;
$uid = $user->uid;
$user_data = user_load($uid);
print_r($user_data);
leider an dem aktuellen user zu orientieren, während der registrierung also - wie du richtig vermutet hast - an anonymous.
@caw:
Vielen Dank, allerdings werde ich es mit Profile 2 probieren, da ich einen 7er core habe.
Falls das nicht klappt mal eine Herangehensweise mit Check Profile
Morgen werde ich ein kleines Update geben, ob mir eure Tips weitergeholfen haben. Aber schonmal vielen Dank!
Viele Grüße
Sebastian
EDIT:
Hallo nochmal.
Vielen Dank für die klasse Anregungen.
Mit Check Profile habe ich nun die gewünschte Funktion erhalten können.
Nachdem sich der User Registriert hat, erhält er nach dem ersten einloggen eine Aufforderung seine Angaben zu bestätigen.
Dadurch kann beim Absenden das Computed field durch
global $user;
auf die UID zugreifen.