[CCK] insérer une valeur par défaut depuis une requete SQL

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

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 ?

Version de Drupal : 

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 :)