Submitted by pyg on
Bonjour,
j'ai un champ texte/autocomplete CCK "mail", ainsi qu'un autre champ "mail" dans la table users rempli par l'utilisateur lors de son incription.
Ma question : comment afficher par défaut la valeur du champs "mail" de la table user dans le champs "mail" de CCK si celui-ci est vide ?
J'ai tenté, dans "CCK => Mail => Default value => code php" de mettre :
global $user;
$result = db_query("SELECT mail FROM {users} WHERE (uid = $user->uid)", $user->uid);
$mail= db_result(db_query($result));
return array(array('mail' => $mail));
mais rien ne s'affiche...
Auriez vous un pointeur pour m'aider ?
Essaye simplement : <?php
Permalien Soumis par Damien Tournoud le 5 Juillet, 2007 - 15:03
Essaye simplement :
Marche nikel, merci beaucoup
Permalien Soumis par pyg le 5 Juillet, 2007 - 16:55
Marche nikel, merci beaucoup !
Un pb venait se rajouter : apparemment, l'exemple donné ne fonctionne pas dans un champs Ajax/autocomplete (pas bien gênant dans mon cas).
Par contre, mon souci, c'est que je vais avoir d'autres champs à récupérer dans la base qui ne peuvent être récupérés via l'objet user.
Du coup, j'ai recreusé et cette requete passe nettement mieux :
global $user;
$result = db_query("SELECT mail FROM users WHERE (uid = %d)", $user->uid);
$mail= db_result($result);
return array(0 => array('value' => $mail));
Tout de suite, c'est mieux (c'est ça, à force de faire des copier-coller, et de modifier 20 fois, on fait que des bêtises, des bêtises, quand t'es pas lààà... euh, je m'égare, là)
Merci beaucoup, ton aide m'aura permis de me débloquer ce probleme :)