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/02/2011, 18h27   #1
Invité de passage
 
Inscription : janvier 2010
Messages : 22
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 22
Points : 0
Points : 0
Bonjour à tous , j'espère que vous pourriez m'aider, alors voilà:
j'ai un formulaire d'enregistrement des utilisateur : add_customer.html dont voici le code:
Code html :
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<body>
<fieldset>
  <legend class="formulaire">Formulaire d'inscription d'utilisateur</legend>
  <form action="confirm.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
    <table width="494" border="0">
      <tr>
        <th width="215" scope="row"> Nom complet</th>
        <td width="263" align="center" valign="middle"><input name="name" type="text" size="25" maxlength="25" /></td>
      </tr>
      <tr>
        <th scope="row">Adresse</th>
        <td align="center" valign="middle"><input type="text" name="adress" id="adress" /></td>
      </tr>
      <tr>
        <th scope="row">E-mail</th>
        <td align="center" valign="middle"><input type="text" name="email" id="email" /></td>
      </tr>
      <tr>
        <th scope="row">Mot de passe</th>
        <td align="center" valign="middle"><input type="password" name="password" id="password" align="middle" /></td>
      </tr>
      <tr>
        <th scope="row">Confirmer le mot de passe</th>
        <td align="center" valign="middle"><input type="password" name="cpassword" id="cpassword" /></td>
      </tr>
      <tr>
        <th scope="row">Date de naissance</th>
        <td><select name="birth_month" id="birth_month">
          <option value="1" selected="selected">Janvier</option>
          <option value="2">Février</option>
          <option value="3">Mars</option>
          <option value="4">Avril</option>
          <option value="5">Mai</option>
          <option value="6">Juin</option>
          <option value="7">Juillet</option>
          <option value="8">Aout</option>
          <option value="9">Septembre</option>
          <option value="10">Octobre </option>
          <option value="11">Novembre</option>
          <option value="12">Décembre</option>
        </select> <select name="birth_day" id="birth_day">
          <option value="1">01</option>
          <option value="2">02</option>
          <option value="3">03</option>
          <option value="4">04</option>
          <option value="5">05</option>
          <option value="6">06</option>
          <option value="7">07</option>
          <option value="8">08</option>
          <option value="9">09</option>
          <option value="10">10</option>
          <option value="11">11</option>
          <option value="12">12</option>
          <option value="13">13</option>
          <option value="14">14</option>
          <option value="15">15</option>
          <option value="16">16</option>
          <option value="17">17</option>
          <option value="18">18</option>
          <option value="19">19</option>
          <option value="20">20</option>
          <option value="21">21</option>
          <option value="22">22</option>
          <option value="23">23</option>
          <option value="25">24</option>
          <option value="27">26</option>
          <option value="28">28</option>
          <option value="29">29</option>
          <option value="30">30</option>
          <option value="31">31</option>
        </select>
        <input name="birth_year" type="text" id="birth_year" size="4"/>
        <span class="year_birth">(YYYY)</span></td>
      </tr>
      <tr>
        <th scope="row">Sexe</th>
        <td><input type="radio" name="gender" id="genre" value="Homme" />
          <span class="homme">Homme</span>
<input type="radio" name="gender" id="gender" value="femme" />
          <span class="femme">Femme</span></td>
      </tr>
      <tr>
        <th colspan="2" scope="row"><input type="submit" name="Envoyer" id="Envoyer" value="Envoyer" /></th>
      </tr>
    </table>
  </form>
</fieldset>
</body>

quand l'utilisateur clique sur le bouton ENVOYER , il sera rediriger vers le fichier confirm.php qui devra afficher les informations rentrées par l'utilisateur, voici le code :
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<body>
 
  <table width="200" border="1">
    <tr>
      <th scope="row">Nom complet</th>
      <td>
 
      <?php //Validation du nom.
	    if (empty($name)) {
			die (" Aucun nom envoyé");
		}
		elseif ((strlen($name) < 5) || (strlen($name) > 50)) {
			die (" Nom Invalide");
		}
		else {
			echo $name;
		}
		?>
      </td>
    </tr>
    <tr>
      <th scope="row">Adresse</th>
      <td>
	  <?php //Validation de l'adresse.
	    if (empty($adress)) {
			die (" Aucune adresse envoyé");
		}
		elseif ((strlen($adress) < 5) || (strlen($adress) > 200)) {
			die (" Adresse Invalide");
		}
		else {
			echo $adress;
		}
	  ?></td>
    </tr>
    <tr>
      <th scope="row">Email</th>
      <td>
	  <?php //Validation de l'Email.
	    if (empty($email)) {
			die (" Aucune adresse email envoyé");
		}
		elseif ((strlen($email) < 5) || (strlen($email) > 100)) {
			die (" Adresse Email invalide, votre adresse email est trop courte ou trop longue");
		}
		elseif (!ereg("@",$email)) {//la fonction ereg applique une expression régulière sur une chaîne, donc on va vérifier si email contient @.
			die ("Adresse Email invalide, symbole @ introuvable");
			}
			else {
			echo $email;
		}
	  ?></td>
    </tr>
    <tr>
      <th scope="row">Mot de passe</th>
      <td>
      <?php //Validation du mot de passe.
	    if (empty($password) || empty($cpassword) ) {
			die (" Aucun mot de passe envoyé");
		}
		elseif ((strlen($password) < 5) || (strlen($password) > 15)) {
			die (" Longueur de mot de passe Invalide");
		}
		elseif (!(strlen($password) == (strlen($cpassword)))) {
			die ("Les mots de passe ne correspondent pas !");
		}
			elseif (!($password) == ($cpassword) ) {
			die ("Les mots de passe ne correspondent pas !");
			}
		else {
			for ($i=0; $i<strlen($password); $i++){
			echo "*";}
		}
	  ?></td>
    </tr>
    <tr>
      <th scope="row">Date de naissance</th>
      <td>
      <?php //Validation de la date de naissance.
	    if (empty($birth_month) || empty($birth_day) || empty($birth_year)) { // ou et pour le ET :&& 
			die (" Dtae de naissance non saisi ou incomplète");
		}
		switch ($birth_month) {
			case 1: print ("janvier "); break;
			case 2: print ("février "); break;
			case 3: print ("Mars "); break;
			case 4: print ("avril "); break;
			case 5: print ("mai "); break;
			case 6: print ("juin "); break;
			case 7: print ("juillet "); break;
			case 8: print ("aout "); break;
			case 9: print ("septembre "); break;
			case 10: print ("octobre "); break;
			case 11: print ("novembre "); break;
			case 12: print ("décembre "); break;
		}			
		if (($birth_day < 1) || ($birth_day > 31)) {
			die (" Date invalide");
		}
		else {
			echo $birth_day ; "&nbsp;";
		}
	    if (($birth_year < 1900 ) || ($birth_year > 1999)) {
			die ("Année de naissance invalide");
			}
		else {
			echo $birth_year;}
		?>
      </td>
    </tr>
    <tr>
      <th scope="row">Sexe</th>
      <td>
       <?php //Validation du genre /sexe.
	    if (empty($gender)) {
			die (" Aucun genre saisi");
		}
		elseif (!(($genre == "homme") || ($genre == "femme"))) {
			die (" Valeur du champ Sexe invalide");
		}
		else {
			echo $gender;
		}
		?>
      </td>
    </tr>
    <! Transmission des informations au script add_customer.php -->
    <form name="confirm" action="add_customer.php"> 
    <?php 
	echo "<input name=\"name\" type="hidden" value= \"".$name."\"/>";
	echo "<input name=\"adress\" type="hidden" value= \"".$adress."\"/>";
	echo "<input name=\"email\" type="hidden" value= \"".$email."\" />";
	echo "<input name=\"password\" type="hidden" value= \"".$password."\" />";
	echo "<input name=\"gender\" type="hidden" value= \"".$gender."\" />";
	echo "<input name=\"birth_month\" type="hidden" value= \"".$birth_month."\" />";
	echo "<input name=\"birth_day\" type="hidden" value= \"".$birth_day."\" />";
	echo "<input name=\"birth_year\" type="hidden" value= \"".$birth_year."\" />";	
	?>
    <tr>
      <th colspan="2" scope="row"><input type="submit" name="envoyer" id="envoyer" value="Envoyer" /></th>
      </form>
    </tr>
  </table>
 
</body>
une fois les informations validées, le script confirm.php les transmet au script add_customer.php, qui se charge de les stocker dans la BDD.

SEUL BéMOLE: quand je rempli tous les champs de mon formulaire de la page add_customer.html et je clique sur ENVOYER il m'affiche l'erreur suivante dans le browser:


Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\Program Files\EasyPHP-5.3.2\www\Bukbuz\confirm.php on line 144

sachant que je travaille avec dreamweaver CS4 merci svp de me répondre je n'arrive plus à terminer mon travail car je suis bloqué
sulfuryblood est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 19h07   #2
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
Bonsoir,

Code :
1
2
3
4
5
6
7
8
	echo "<input name=\"name\" type=\"hidden\" value= \"".$name."\"/>";
	echo "<input name=\"adress\" type=\"hidden\" value= \"".$adress."\"/>";
	echo "<input name=\"email\" type=\"hidden\" value= \"".$email."\" />";
	echo "<input name=\"password\" type=\"hidden\" value= \"".$password."\" />";
	echo "<input name=\"gender\" type=\"hidden\" value= \"".$gender."\" />";
	echo "<input name=\"birth_month\" type=\"hidden\" value= \"".$birth_month."\" />";
	echo "<input name=\"birth_day\" type=\"hidden\" value= \"".$birth_day."\" />";
	echo "<input name=\"birth_year\" type=\"hidden\" value= \"".$birth_year."\" />";
A+.
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 19h17   #3
Invité de passage
 
Inscription : janvier 2010
Messages : 22
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 22
Points : 0
Points : 0
MERCI andry.aime, j'ai plus le message d'erreur que j'avais mais maintenant j'ai autre chose qui s'affiche :

j'ai saisi tous les champs , et quand je clique sur ENVOYER :

il m'affiche une seule colonne du NOM( au lieu de tous les champs saisi) et à coté le message d'erreur disant: Aucun nom envoyé

correspondant au bout de code suivant :
Code :
1
2
3
4
5
6
7
8
9
10
11
<?php //Validation du nom.
	    if (empty($name)) {
			die (" Aucun nom envoyé");
		}
		elseif ((strlen($name) < 5) || (strlen($name) > 50)) {
			die (" Nom Invalide");
		}
		else {
			echo $name;
		}
		?>
sulfuryblood est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 19h30   #4
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 22h33   #5
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
La valeur venant du formulaire c'est $_POST['name'] et pas $name.
sabotage 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 12h01.


 
 
 
 
Partenaires

Hébergement Web