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 16/04/2008, 12h09   #1
Futur Membre du Club
 
Inscription : décembre 2007
Messages : 73
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 73
Points : 15
Points : 15
Par défaut executer un controle php apres submit

Bonjour,

Je créé un formulaire nommé "formulaire_contact.php" avec contrôle en php. Voici une partie du code (il y a pas mal de champ):

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
<FORM method="GET" action="formulaire_contact.php" name="technet">
	<table align="center">
			<tr>
				<td>Civilité *</td>
				<td>
				<INPUT type="radio" name="choix" value="Mlle" >Mademoiselle<br>
				<INPUT type="radio" name="choix" value="F">Madame<br>
				<INPUT type="radio" name="choix" value="M" >Monsieur<br>
				</td>
				<td>
				<?php
				if (isset ($_GET['choix']) || $_GET['choix'] != "" )
					{
						$civilite=$_GET['choix'];			
					}
					else
					{
						echo ' Vous n\'avez pas sélectionné de civilité<br>';
					}
 
				?>
				</td>
			</tr>
			<tr>		
				<td>Nom *</td>
				<td>
				<input type="text" name="nom">
				<br>
				</td> 
				<td>
				<?php
				if (isset ($_GET['nom']) || $_GET['nom'] != "")
					{
						$nom=$_GET['nom'];
					}
					else
					{
						echo ' Entrez votre nom<br>';
 
					}
 
				?>			
				</td>
			</tr>	
			<tr>				
				<td>Pr&eacute;nom *</td>
				<td>
				<input type="text" name="prenom" >
				<br>
				</td>
				<td>
				<?php
				if (isset ($_GET['prenom']) || $_GET['prenom'] != "")
					{
						$prenom=$_GET['prenom'];
					}
					else
					{
						echo ' Entrer votre prénom<br>';
					}
				?>
				</td>
 
 
                            etc, etc (d'autres definition de champ)
 
<INPUT type="submit" value="Valider" name="action" onclick="formulaire_contact.php">
Comme vous l'avez sûrement remarqué, j'ai inséré le contrôle de chaque champ après chaque entrée.
Je voulais savoir s'il était possible de faire cela?
Si oui, est ce qu'il existerait un moyen d'exécuter le code php uniquement apres avoir validé le formulaire? Car actuellement, le php s'exécute directement au chargement de la page!


Merci d'avance de vos réponses!!!
titounnette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/04/2008, 13h09   #2
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Salut,

De cette façon cela fonctionne bien que je préfère pour ma part bien distinguer la partie vérification/validation de la partie affichage.
Citation:
Si formulaire soumis alors
si choix est faux alors
afficher message
etc etc

Si tous les tests ok alors on valide le formulaire et on passe à autre chose
Fin tests
Affichage formulaire avec les messages eventuels
Cette méthode est plus propre.
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/04/2008, 13h28   #3
Futur Membre du Club
 
Inscription : décembre 2007
Messages : 73
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 73
Points : 15
Points : 15
c'est ce que j'avais commencé a faire seulement je ne voyais pas comment afficher le message d'erreur en face de la case correspondante.
Par ailleurs, je me suis rendu compte qu'il n'effectuait pas les test et qu'il insérait des champs vide ds ma BDD alors meme que j'avais précisé qu'aucun champ ne devait etre nul.

est que ce serait une erreur dans mon code (ce dont je ne pense pas) ou est ce que j'aurais oublié quelque chose?
titounnette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/04/2008, 15h08   #4
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Pour voir s'il y a une erreur, il nous faudrait au moins une plus grande partie du code avec la partie insertion. Mais en gros, sur un php unique, il faut procéder de cette façon :

Traitement Php
Verif
insertion
Affichage
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h32.


 
 
 
 
Partenaires

Hébergement Web