Bonjour,
J’ai un petit problème… J’aimerai que lorsque un utilisateur envois un formulaire, le même formulaire soit afficher mais avec les données entré par l’utilisateur.
Ce formulaire est une sorte de calculatrice qui affiche le résultat en dessous, donc j’aimerai pas que l’utilisateur doivent à chaque fois entré toute les données.
Lorsque que j’essaie d’accéder à form_state si je fait un print dans la fonction de construction de mon forumaire j’ai bien les valeurs dans un tableau mais si j’essaie de les assigné à #value ça marche pas :(. Je pense que ces valeurs sont effacé une fois le formulaire soumis en faite tout comme $_POST.
Je dois faire comment ?
Merci
EDIT voilà le code…
<?php
function test_financement($form_state) {
$age = $form_state['values']['info']['age'];
//print $age;
//$age = '33';
//Informations indispensables
$form['info'] = array(
'#type' => 'fieldset',
'#title' => t('Informations indispensables'),
'#tree' => TRUE,
);
$form['info']['age'] = array(
'#type' => 'textfield',
'#title' => t('Votre âge'),
'#value' => $age, // FIXME doit ce remplir avec la valeur envoyer par $_POST
'#size' => 2,
'#maxlength' => 2,
'#required' => TRUE,
);
?>- Vous devez vous identifier ou créer un compte pour écrire des commentaires

Salut,
Le comportement par défaut de Drupal est de rediriger le formulaire vers lui-même une fois qu’il a été traité, voilà pourquoi il apparaît vide.
Cette redirection a été implémentée pour éviter que le même formulaire soit posté 2 fois par erreur (en rafraîchissant la page par exemple).
Sous Drupal 5, tu peux annuler cette redirection grâce à un
return FALSE;placé à la fin de la fonction de _submit, soit dans ton cas :<?phpfunction test_financement_submit(ARGS) {
return FALSE;
}
?>
Faudrait essayer sous Drupal 6.
Autre option (non testée) : définir la propriété suivante dans le formulaire :
<?php$form['#redirect'] = FALSE;
?>
Vincent
Formations Drupal pour WEBMASTERS, DESIGNERS et DÉVELOPPEURS.
drupalfrance
1772
oups.. j’avais pas mis la bonne adresse e-mail dans mon compte, donc je n’ai pas vu ta réponse. Mais merci c’est exactement ça.
http://cloud33.com & http://listentothis.net
gagarine
220