Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/01/2012, 14h50   #1
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 151
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 151
Points : 37
Points : 37
Par défaut Remettre valeurs à zéro en PHP

salutatous,

j'ai fait un formulaire qui possède beaucoup de variables (case à cocher, liste déroulante...)

plutôt que de lister un par un le nom de toutes les variables, n'est-il pas possible de modifier et simplifier le code ci-dessous afin d'initialisier d'un coup toutes les variables de mon formulaire ?

j'ai un formulaire de ce type que je ré-initialise comme ceci :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
if ($reset == true) {       
	$champ_1 = "";
	$champ_2 = "";
	$champ_3 = "";
	$case_a_coche_1 = "";
	$case_a_coche_2 = "";
	$case_a_coche_3 = "";
	etc...
}
?>
 
<form name="mon_formulaire" action="<?php echo $PHP_SELF;?>" method="post">
 
<input name="champ_1"> <br />
<input name="champ_2"> <br />
<input name="champ_3"> <br />
 
<input name="case_a_coche_1" type="checkbox"> <br />
<input name="case_a_coche_2" type="checkbox"> <br />
<input name="case_a_coche_3" type="checkbox"> <br />
 
<input type="submit" value="Validation">
<input type="submit" name="reset"  value="Remettre les valeurs à zéro">
 
</form>
nicomax34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 15h04   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
euh ...

__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 15h23   #3
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 151
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 151
Points : 37
Points : 37
bonjour stealth35,

justement, j'ai essayé toute une série de <input type="reset" />, ça ne fonctionne pas bien :

Code :
1
2
3
4
5
<input type="submit" value="Remettre les valeurs à zéro" onclick="location.reload()" />
 
<input type="reset" value="Remettre les valeurs à zéro">
 
<input type="button" value="Remettre les valeurs à zéro" onClick="this.form.reset();">
je m'explique :

avec ce type de bouton ci-dessus, si je coche des options puis que je clique directement sur le bouton "Remettre les valeurs à zéro", toutes mes options se mettent effectivement à zéro.

PAR CONTRE si je coche des options puis que je clique d'abord sur le bouton "Rechercher", ça m'affiche bien les résultats demandés (extraits d'une bdd) ainsi que mes options pré-sélectionnés... MAIS si je clique à ce moment là sur le bouton "Remettre les valeurs à zéro", et bien ça ne se remet pas du tout à zéro !!!
nicomax34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 15h33   #4
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 789
Points : 35 789
Déjà, ça n'a rien à voir avec PHP, c'est du HTML.

C'est une erreur assez courante. Un bouton reset sert à rétablir les valeurs par défaut dans le formulaire, or ces valeurs ne sont presque jamais renseignées, du coup, c'est la valeur initiale qui devient la valeur par défaut.
Si tu ajoutes un attribut defaultValue à tes input ou defaultSelected à une balise option, c'est cette valeur qui sera utilisée par le reset.
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 17h31   #5
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 151
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 151
Points : 37
Points : 37
Bonjour Bovino,

Citation:
Déjà, ça n'a rien à voir avec PHP, c'est du HTML.
c'est juste que je pensais qu'il était possible de simplifier le code PHP ci-dessous, de façon à éviter de reprendre chaque nom de variables de mon formulaire :

Code :
1
2
3
4
5
6
7
8
9
10
11
<?php
if ($reset == true) {       
	$champ_1 = "";
	$champ_2 = "";
	$champ_3 = "";
	$case_a_coche_1 = "";
	$case_a_coche_2 = "";
	$case_a_coche_3 = "";
	etc...
}
?>
Comme je n'ai pas compris comment utiliser les attribut "defaultValue" ou "defaultSelected", j'ai "bricoler" une méthode de renvoi de page vers une page vierge qui renvoie vers ma page contenant mon formulaire, tout en conservant ma session...

même si ce n'est pas une méthode "pro" au moins ça fonctionne
nicomax34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h34.


 
 
 
 
Partenaires

Hébergement Web