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 24/09/2007, 11h06   #1
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
Par défaut Récupération d'un select, liste dynamique

Salut,
j'ai 2 tables, une personne qui contient un id code et une tablecodepostal qui contient id code et code postal
j'ai une formulaire qui contient une lite deroulante avec tous les code postaux
il faut qu'a al validation du formulaire, il auve dans la table personne l'idcode correpondant a la villeselectionnée,
pour le moment il me donne toujoursid code du premier de la liste
HELP me
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
 
//initialisation
if(!isset($_GET['code'])) $_GET['code']=1;//init de code si non déclaré     
if(isset($_GET['code'])) $code=$_GET['code'];
else $code=""
 
//select pour la liste des villes
mysql_select_db($database_connection, $connection);
$query_rsCp = "SELECT * FROM code_postal";
$rsCp = mysql_query($query_rsCp, $connection) or die(mysql_error());
$row_rsCp = mysql_fetch_assoc($rsCp);
$totalRows_rsCp = mysql_num_rows($rsCp);
 
//select pour id code en fonction du code selectionne
$col_rsIdCode = "1";
if (isset($_GET['code'])) {
  $col_rsIdCode = (get_magic_quotes_gpc()) ? $_GET['code'] : addslashes($_GET['code']);
}
mysql_select_db($database_connection, $connection);
$query_rsIdCode = sprintf("SELECT code_postal.id_code FROM code_postal WHERE code_postal.code_postal=%s", $col_rsIdCode);
$rsIdCode = mysql_query($query_rsIdCode, $connection) or die(mysql_error());
$row_rsIdCode = mysql_fetch_assoc($rsIdCode);
$totalRows_rsIdCode = mysql_num_rows($rsIdCode);
 
//formulaire
  <select name="code_postal" id="code_postal">
               <?php do {   ?>
                                    <option value="<?php echo $row_rsCp['id_code']?>"
									<?php if (!(strcmp($row_rsCp['id_code'], $_GET['code']))) {echo "SELECTED";} ?>>                                           <?php echo $row_rsCp['code_postal']?></option>
                         <?php
                                 } 
					 while ($row_rsCp = mysql_fetch_assoc($rsCp));
                     $rows = mysql_num_rows($rsCp);
                      if($rows > 0) {
                                       mysql_data_seek($rsCp, 0);
	                                   $row_rsCp = mysql_fetch_assoc($rsCp);
                                     }   ?> 
              </select>
 
 
//insertion
 $insertSQL = "INSERT INTO personne (mail,nom, prenom, id_code, rue, tel) VALUES                        
		                ('$mail','$nom','$prenom','$code','$rue','$tel')";
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 11h21   #2
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Salut
pour récupérer la valeur, tu dois utiliser un formulaire sur ton select. La tu vas récupérer ta valeur selectionnée.

sinon 2/3 trucs
Code :
1
2
3
4
 
if(!isset($_GET['code'])) $_GET['code']=1;//init de code si non déclaré
if(isset($_GET['code'])) $code=$_GET['code'];
else $code="";
ca sert à rien tu peux directement faire
Code :
1
2
3
 
$code = 1;
if (isset($_GET['code']) $code = $_GET['code'];
Code :
1
2
3
4
5
$col_rsIdCode = "1";
if (isset($_GET['code'])) 
{
	$col_rsIdCode = (get_magic_quotes_gpc()) ? $_GET['code'] : addslashes($_GET['code']);
}
le test ne sert à rien non plus si tu utilise $code.

Et quelle est la différence entre $code et $col_rsIdCode?

et dernier point, je ne vois pas l'utilite de ce code
Code :
1
2
3
4
5
6
 
mysql_select_db($database_connection, $connection);
$query_rsIdCode = sprintf("SELECT code_postal.id_code FROM code_postal WHERE code_postal.code_postal=%s", $col_rsIdCode);
$rsIdCode = mysql_query($query_rsIdCode, $connection) or die(mysql_error());
$row_rsIdCode = mysql_fetch_assoc($rsIdCode);
$totalRows_rsIdCode = mysql_num_rows($rsIdCode);
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 11h34   #3
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
ok, merci,
pour le dernier code select c'est pour avoir toutes les villes dans ma liste dynamique

Sinon pour j'ai mis le select dans un formulaire, ca c'est juste le code pour la liste
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 
			  <select name="code_postal" id="code_postal">
               <?php do {   ?>
                                    <option value="<?php echo $row_rsCp['id_code']?>"
									<?php if (!(strcmp($row_rsCp['id_code'], $_GET['code']))) {echo "SELECTED";} ?>>                                           <?php echo $row_rsCp['code_postal']?></option>
                         <?php
                                 } 
					 while ($row_rsCp = mysql_fetch_assoc($rsCp));
                     $rows = mysql_num_rows($rsCp);
                      if($rows > 0) {
                                       mysql_data_seek($rsCp, 0);
	                                   $row_rsCp = mysql_fetch_assoc($rsCp);
                                     }   ?> 
              </select>
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 11h42   #4
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Je viens de voir quelque chose :
tout a la fin du premier post tu as
Code :
1
2
 
 $insertSQL = "INSERT INTO personne (mail,nom, prenom, id_code, rue, tel) VALUES ('$mail','$nom','$prenom','$code','$rue','$tel')";
donc tu insere le code que tu récupéres par $_GET['code'], mais aucun de tes selects n'envoie la donnée en $_GET['code'] et ils ont tout les deux le même nom. Je suis pas sur que le php gère bien cela. Mais a priori, c'est le résultat du second que tu veux non ?
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 11h53   #5
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
oui c'est ca, je dois avoir celui qui sera en fonction de code_postal selectionné
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 11h55   #6
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Donc tu dois récuperer $_GET['code_postal'] et non pas $_GET['code']
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 12h03   #7
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
je fais ca marche touhours pas il me recupere toujours le premier de la liste
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 14h08   #8
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Argh sinon, je peux voir le code de la page en entier pour voir l'appel du formulaire, manière d'avoir une idée un peu plus précise.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 14h24   #9
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
ok mais c'est un peu long
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
 
<?php 
if(isset($_POST['mail']))  $mail=$_POST['mail'];
else      $mail="";
 
if(isset($_POST['login']))   $login=$_POST['login'];
else      $login="";
 
if(isset($_POST['nom']))    $nom=$_POST['nom'];
else      $nom="";
 
if(isset($_POST['prenom']))  $prenom=$_POST['prenom'];
else      $prenom="";
 
if(isset($_POST['rue']))  $rue=$_POST['rue'];
else      $rue="";
 
if(isset($_POST['tel'])) $tel=$_POST['tel'];
else      $tel="";
 
if(isset($_POST['password']))  $password=$_POST['password'];
else      $password="";
 
 
if(!isset($_GET['code'])) $_GET['code']=1;//init de code si non déclaré     
if(isset($_GET['code'])) $code=$_GET['code'];
else $code="";
 
if(isset($_POST['code_postal'])) $code_postal=$_POST['code_postal'];
 else      $code_postal="";
 
if(isset($_POST['statut'])) $statut=$_POST['statut'];
 else      $statut="";
?>
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
mysql_select_db($database_connection, $connection);
$query_rsCp = "SELECT * FROM code_postal";
$rsCp = mysql_query($query_rsCp, $connection) or die(mysql_error());
$row_rsCp = mysql_fetch_assoc($rsCp);
$totalRows_rsCp = mysql_num_rows($rsCp);
 
 
$col_rsIdCode = "1";
if (isset($_GET['code'])) {
  $col_rsIdCode = (get_magic_quotes_gpc()) ? $_GET['code'] : addslashes($_GET['code']);
}
mysql_select_db($database_connection, $connection);
$query_rsIdCode = sprintf("SELECT code_postal.id_code FROM code_postal WHERE code_postal.code_postal=%s", $col_rsIdCode);
$rsIdCode = mysql_query($query_rsIdCode, $connection) or die(mysql_error());
$row_rsIdCode = mysql_fetch_assoc($rsIdCode);
$totalRows_rsIdCode = mysql_num_rows($rsIdCode);
/*
mysql_select_db($database_connection, $connection);
$sqlcode = "SELECT code_postal.id_code FROM code_postal WHERE code_postal.code_postal='".$code_postal."'";
$reqcode = mysql_query($sqlcode, $connection) or die(mysql_error());
$code= mysql_num_rows($reqcode);*/
je fais des test pour les doublons
que je ets pas car troplong
sinon selon on insere
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
 $insertSQL = "INSERT INTO personne (mail,nom, prenom, id_code, rue, tel) VALUES                        
		                ('$mail','$nom','$prenom','$code','$rue','$tel')";            
          mysql_select_db($database_connection, $connection);
          $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
          $var=mysql_insert_id();
 
          $insertSQL ="INSERT INTO membre (password, login, id_personne) VALUES ('$password', '$login', '$var')";
          mysql_select_db($database_connection, $connection);
          $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
 
		   }
ensuite le formulaire
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
 
 <form name="form1" method="POST"  onsubmit="return formCheck(this);">
 
        <table width="650" align="center" cellspacing="0" bordercolor="#FF0000">
          <tr>
      <td><table width="604" border="0" cellspacing="0">
          <tr> 
            <td width="269" class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Nom 
                :</font></div></td>
            <td width="371" class="bodyText"><input name="nom" type="text" id="nom" maxlength="30" ></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Pr&eacute;nom 
                : </font></div></td>
            <td class="bodyText"><input name="prenom" type="text" id="prenom" maxlength="30"></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Adresse 
                :</font></div></td>
            <td class="bodyText"><input name="rue" type="text" id="rue" maxlength="50"></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right">
              <div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">CP et ville
                : </font></div>
              </div></td>
            <td class="bodyText"><label>
 
 
			  <select name="code_postal" id="code_postal">
               <?php do {   ?>
                                    <option value="<?php echo $row_rsCp['id_code']?>"
									<?php if (!(strcmp($row_rsCp['id_code'], $_GET['code']))) {echo "SELECTED";} ?>>                                           <?php echo $row_rsCp['code_postal']?></option>
                         <?php
                                 } 
					 while ($row_rsCp = mysql_fetch_assoc($rsCp));
                     $rows = mysql_num_rows($rsCp);
                      if($rows > 0) {
                                       mysql_data_seek($rsCp, 0);
	                                   $row_rsCp = mysql_fetch_assoc($rsCp);
                                     }   ?> 
              </select>
 
            </label></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">T&eacute;l/Gsm 
              :</font></div></td>
              <td class="bodyText">
 
                      <div align="left">
                        <input name="tel" type="text" id="tel" maxlength="30">
                      </div></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">e-mail 
              :</font></div></td>
            <td class="bodyText">
 
                      <div align="left">
                        <input name="mail" type="text" id="mail" maxlength="30">
                      </div></td>
          </tr>
          <tr>
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif"> Login :</font></div></td>
            <td class="bodyText"><label>
              <input name="login" type="text" id="login">
            </label></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">mot 
                de passe :</font></div></td>
            <td class="bodyText"><label>
              <input name="password" type="password" id="password">
            </label></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"></div></td>
            <td class="bodyText"><input name="statut" type="hidden" id="statut" value="membre"></td>
          </tr>
        </table>
        <p align="center">
          <input type="submit" name="Submit" value="Envoyer">
          <label>
          <input name="reset" type="reset" id="reset" value="Annuler">
          </label>
        </p>
        <p>&nbsp;</p></td>
    </tr>
  </table>
          <input type="hidden" name="MM_insert" value="form1">
      </form>    </td>
Voila
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 14h29   #10
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
ok je regarde ca, mais juste avant $insertSQL, tes tests sont juste pour le doublon ou il y a un test de passage également, car il y a un } en trop en bas.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 14h41   #11
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Bon petites modifications
1er bloc :
Code :
1
2
3
 
if(isset($_GET['code_postal'])) $code=$_GET['code_postal'];
else $code=1;
A priori rien ne t'envoie l'attribut code dans ton code.

2ième bloc
Code :
1
2
 
$col_rsIdCode = (get_magic_quotes_gpc()) ? $code : addslashes($code);
Les test sont peu utiles, si tu utilise $code, qui contient ce que tu cherches, il est déjà initialisé et existant, donc ce n'est pas la peine d'en rajouter.

3ième bloc
Code :
1
2
3
4
5
if (isset($_GET['Submit']) and $_GET['Submit'] == "Envoyer")
{
  ...
 
}
J'ai rajouté ce test, qui te permet d'executer la requete uniquement si tu valide le formulaire. Sinon tu passe dedans la première fois. Et le $code = 1 et apres si tu as des tests de non doublon tu ne réexecute pas la requete et donc la valeur sera toujours 1.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 14h52   #12
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
pour plus de facilité pour toi peut etre je te metla page entiere
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
 
<?php 
if(isset($_POST['mail']))  $mail=$_POST['mail'];
else      $mail="";
 
if(isset($_POST['login']))   $login=$_POST['login'];
else      $login="";
 
if(isset($_POST['nom']))    $nom=$_POST['nom'];
else      $nom="";
 
if(isset($_POST['prenom']))  $prenom=$_POST['prenom'];
else      $prenom="";
 
if(isset($_POST['rue']))  $rue=$_POST['rue'];
else      $rue="";
 
if(isset($_POST['tel'])) $tel=$_POST['tel'];
else      $tel="";
 
if(isset($_POST['password']))  $password=$_POST['password'];
else      $password="";
 
 
if(!isset($_GET['code'])) $_GET['code']=1;//init de code si non déclaré     
if(isset($_GET['code'])) $code=$_GET['code'];
else $code="";
 
if(isset($_POST['code_postal'])) $code_postal=$_POST['code_postal'];
 else      $code_postal="";
 
if(isset($_POST['statut'])) $statut=$_POST['statut'];
 else      $statut="";
?>
<?php require_once('Connections/connection.php'); ?>
<?php
 
// *** verifie si login existe
$MM_flag="MM_insert";
if (isset($_POST[$MM_flag])) {
  $MM_dupKeyRedirect="inscription_erreur.php";
  $loginUsername = $_POST['login'];
  $LoginRS__query = "SELECT login FROM membre WHERE login='" . $loginUsername . "'";
  mysql_select_db($database_connection, $connection);
  $LoginRS=mysql_query($LoginRS__query, $connection) or die(mysql_error());
  $loginFoundUser = mysql_num_rows($LoginRS);
 
  //si le login existe il ne peut etre ajoute
  if($loginFoundUser){
    $MM_qsChar = "?";
    //redirection vers une page erreur
    if (substr_count($MM_dupKeyRedirect,"?") >=1) $MM_qsChar = "&";
    $MM_dupKeyRedirect = $MM_dupKeyRedirect . $MM_qsChar ."requsername=".$loginUsername;
    header ("Location: $MM_dupKeyRedirect");
    exit;
  }
} 
mysql_select_db($database_connection, $connection);
$query_rsCp = "SELECT * FROM code_postal";
$rsCp = mysql_query($query_rsCp, $connection) or die(mysql_error());
$row_rsCp = mysql_fetch_assoc($rsCp);
$totalRows_rsCp = mysql_num_rows($rsCp);
 
 
$col_rsIdCode = "1";
if (isset($_GET['code'])) {
  $col_rsIdCode = (get_magic_quotes_gpc()) ? $_GET['code'] : addslashes($_GET['code']);
}
mysql_select_db($database_connection, $connection);
$query_rsIdCode = sprintf("SELECT code_postal.id_code FROM code_postal WHERE code_postal.code_postal=%s", $col_rsIdCode);
$rsIdCode = mysql_query($query_rsIdCode, $connection) or die(mysql_error());
$row_rsIdCode = mysql_fetch_assoc($rsIdCode);
$totalRows_rsIdCode = mysql_num_rows($rsIdCode);
/*
mysql_select_db($database_connection, $connection);
$sqlcode = "SELECT code_postal.id_code FROM code_postal WHERE code_postal.code_postal='".$code_postal."'";
$reqcode = mysql_query($sqlcode, $connection) or die(mysql_error());
$code= mysql_num_rows($reqcode);*/
 
 
mysql_select_db($database_connection, $connection);
  // pour verifier les doublons  mail
  $sql = "select mail from personne where mail='".$mail."'";
  $req= mysql_query($sql) or die(mysql_error()); 
  $res = mysql_num_rows($req);
 
   // pour verifier les doublons  nom
  $sql1 = "select nom from personne where nom='".$nom."'";
  $req1= mysql_query($sql1) or die(mysql_error()); 
  $res1 = mysql_num_rows($req1);
 
  //pour verifier les doublons nom, prenom et adresse
  $sql2 = "SELECT nom, prenom,rue FROM personne whERE nom='".$nom."' and prenom='".$prenom."' and rue='".$rue."' and mail ='".$mail ."'"; 
  $req2 = mysql_query($sql2) or die(mysql_error()); 
  $res2 = mysql_num_rows($req2); // on compte le nombre de résultats
 
 
	 //pour verifier les doublons id_personne dans la table membre
  $sql3 = "SELECT personne.id_personne, membre.id_personne FROM personne,membre whERE membre.id_personne =personne.id_personne and mail ='".$mail ."'";
  $req3 = mysql_query($sql3) or die(mysql_error()); 
  $res3 = mysql_num_rows($req3); // on compte le nombre de résultats
 
 
 //pour verifier les doublons prenom et adresse en fonction du nom
  $sql4 = "SELECT  prenom,rue FROM personne whERE  prenom='".$prenom."' and rue='".$rue."' and nom ='".$nom ."'"; 
  $req4 = mysql_query($sql4) or die(mysql_error()); 
  $res4 = mysql_num_rows($req4); // on compte le nombre de résultats
 
 //pour verifier les doublons id_personne dans la table membre en fonction du nom
  $sql5 = "SELECT personne.id_personne, membre.id_personne FROM personne,membre whERE membre.id_personne =personne.id_personne and nom ='".$nom ."'";
  $req5 = mysql_query($sql5) or die(mysql_error()); 
  $res5 = mysql_num_rows($req5); // on compte le nombre de résultats
 
if($res!=0)	// 	si mail connu , verifier si deja personne existe pas de doublon mail
		{
		   if($res2==0) //si nom,prenom et adresse differents 
		   {
		   $MM_flag="MM_insert";
           if (isset($_POST[$MM_flag])) {
                                       $MM_dupKeyRedirect="inscription_erreur.php";
                                       $loginUsername = $_POST['mail'];
                                        $LoginRS__query = "SELECT mail FROM personne WHERE mail='" . $loginUsername . "'";
                                        mysql_select_db($database_connection, $connection);
                                        $LoginRS=mysql_query($LoginRS__query, $connection) or die(mysql_error());
                                        $loginFoundUser = mysql_num_rows($LoginRS);
 
                                          //si le login existe il ne peut etre ajoute
                                         if($loginFoundUser){
                                                         $MM_qsChar = "?";
                                                            //redirection vers une page erreur
                                                           if (substr_count($MM_dupKeyRedirect,"?") >=1) $MM_qsChar = "&";
                                                           $MM_dupKeyRedirect = $MM_dupKeyRedirect . $MM_qsChar ."requsername=".$loginUsername;
                                                            header ("Location: $MM_dupKeyRedirect");
                                                            exit;
                                                            }
                                         } 
		      }
		   if($res2!=0) 
		              { //et nom,prenom et adresse aussi on considere deja dans la base peut etre(client)
 
		               $sql="select id_personne,mail from personne where mail='".$mail."'";
					   $Req = mysql_query($sql) or die(mysql_error());
					   $row=mysql_fetch_row($Req);  
					 if($res3==0){ //on insere seulement si l'id_personne n'existe pas deja dans la table membre
					                $insertSql="insert into membre(login, password, id_personne) values ('$login', '$password', '$id')";
					                mysql_select_db($database_connection, $connection);
                                    $Result1 = mysql_query($insertSql, $connection) or die(mysql_error());
					                $insertSQL = "INSERT INTO possede_statut (statut, id_personne) VALUES ('$statut', '$id')";
                                    mysql_select_db($database_connection, $connection);
                                    $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
									header("Location: inscription_client.php");
		                            }		
					//  else header("Location: inscription_erreur.php"); 
					}		    
		}
if($res==0) {  //mail inconnu   
 
       if($res1==0) { // mail et nom inconnu on insere
		  $insertSQL = "INSERT INTO personne (mail,nom, prenom, id_code, rue, tel) VALUES                        
		                ('$mail','$nom','$prenom','$code','$rue','$tel')";            
          mysql_select_db($database_connection, $connection);
          $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
          $var=mysql_insert_id();
 
          $insertSQL ="INSERT INTO membre (password, login, id_personne) VALUES ('$password', '$login', '$var')";
          mysql_select_db($database_connection, $connection);
          $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
 
           $insertSQL = "INSERT INTO possede_statut (statut, id_personne) VALUES ('$statut', '$var')";
           mysql_select_db($database_connection, $connection);
           $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
		   header("Location: inscription_client.php");
		   }
 
		   if($res1!=0){ //le mail est inconnu mais le nom est connu on verifie alors le prenom et l'adresse
 
							$sql="select id_personne,nom from personne where nom='".$nom."'";
					        $Req = mysql_query($sql) or die(mysql_error());
					        $row=mysql_fetch_row($Req);
 
					 if($res5==0){ //on insere seulement si l'id_personne n'existe pas deja dans la table membre
					                $insertSql="insert into membre(login, password, id_personne) values ('$login', '$password', '$id')";
					                mysql_select_db($database_connection, $connection);
                                    $Result1 = mysql_query($insertSql, $connection) or die(mysql_error());
					                $insertSQL = "INSERT INTO possede_statut (statut, id_personne) VALUES ('$statut', '$id')";
                                    mysql_select_db($database_connection, $connection);
                                    $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
									header("Location: inscription_client.php");
		                            }
 
					  else header("Location: inscription_erreur.php"); 
		           }
		  }
 
 
 
 
 
 
?>
 
<html>
 
<head>
<title>Boutique </title>
 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="css/style.css" type="text/css" />
<!--lien appelant une fonction javascript-->
<script src="javascript/verifcaracter.js" type="text/javascript"></script>
<script src="javascript/verification.js" type="text/javascript">
 
<!--
function verification()
{
}
//-->
</script>
</head>
<body>
<div id="Layertitre"> </div>
		<img src="image/log.jpg" width="1470" height="170"/>
 
 
	<div id="Menu">
 
	  <table width="160" border="1" align="center" cellpadding="0" cellspacing="1" bordercolor="#FFFFCC">
				<tr>
				  <td width="160" height="50"><div align="center"><a href="index.html">ACCUEIL</a></td>
				</tr>
				<tr>
				  <td width="160" height="50"><div align="center"><a href="soins.html">SOINS/TARIFS</a></td>
				</tr>
				<tr>
				  <td width="160" height="50" ><div align="center"><a href="produits.php">PRODUITS</a></td>
				</tr>
				<tr>
				  <td width="160" height="50"><div align="center"><a href="contact.php">CONTACT</a></td>
				</tr>
				<tr>
				  <td width="160" height="50"><div align="center"><a href="plan.html">PLAN D'ACCES</a></td>
				</tr> <p>
 
			<p>&nbsp;</p>
		  <p>&nbsp;</p>
	  </table>   
	</div>
 
	<div id="Layerhaut"> 
		<a href="panier.php">Votre Panier</a>&nbsp;&nbsp;&nbsp;<a href="login.php">S'identifier</a>&nbsp;&nbsp;&nbsp;<a href="inscription1.php">S'Inscrire</a>&nbsp;&nbsp;&nbsp;<a href="commande.php">Vos Commandes</a></div>
 
 
	<div id="Layercontenu">
	<table width="100%" border="0" cellspacing="0">
  <tr> 
    <td><p align="center">&nbsp;</p>
      <p align="center"><strong class="bodyText"><font size="6">INSCRIPTION</font></strong><br>
      </p>
      <form name="form1" method="POST"  onsubmit="return formCheck(this);">
 
        <table width="650" align="center" cellspacing="0" bordercolor="#FF0000">
          <tr>
      <td><table width="604" border="0" cellspacing="0">
          <tr> 
            <td width="269" class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Nom 
                :</font></div></td>
            <td width="371" class="bodyText"><input name="nom" type="text" id="nom" maxlength="30" ></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Pr&eacute;nom 
                : </font></div></td>
            <td class="bodyText"><input name="prenom" type="text" id="prenom" maxlength="30"></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Adresse 
                :</font></div></td>
            <td class="bodyText"><input name="rue" type="text" id="rue" maxlength="50"></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right">
              <div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">CP et ville
                : </font></div>
              </div></td>
            <td class="bodyText"><label>
 
 
			  <select name="code_postal" id="code_postal">
               <?php do {   ?>
                                    <option value="<?php echo $row_rsCp['id_code']?>"
									<?php if (!(strcmp($row_rsCp['id_code'], $_GET['code']))) {echo "SELECTED";} ?>>                                           <?php echo $row_rsCp['code_postal']?></option>
                         <?php
                                 } 
					 while ($row_rsCp = mysql_fetch_assoc($rsCp));
                     $rows = mysql_num_rows($rsCp);
                      if($rows > 0) {
                                       mysql_data_seek($rsCp, 0);
	                                   $row_rsCp = mysql_fetch_assoc($rsCp);
                                     }   ?> 
              </select>
 
            </label></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">T&eacute;l/Gsm 
              :</font></div></td>
              <td class="bodyText">
 
                      <div align="left">
                        <input name="tel" type="text" id="tel" maxlength="30">
                      </div></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">e-mail 
              :</font></div></td>
            <td class="bodyText">
 
                      <div align="left">
                        <input name="mail" type="text" id="mail" maxlength="30">
                      </div></td>
          </tr>
          <tr>
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif"> Login :</font></div></td>
            <td class="bodyText"><label>
              <input name="login" type="text" id="login">
            </label></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"><font size="3" face="Verdana, Arial, Helvetica, sans-serif">mot 
                de passe :</font></div></td>
            <td class="bodyText"><label>
              <input name="password" type="password" id="password">
            </label></td>
          </tr>
          <tr> 
            <td class="bodyText"><div align="right"></div></td>
            <td class="bodyText"><input name="statut" type="hidden" id="statut" value="membre"></td>
          </tr>
        </table>
        <p align="center">
          <input type="submit" name="Submit" value="Envoyer">
          <label>
          <input name="reset" type="reset" id="reset" value="Annuler">
          </label>
        </p>
        <p>&nbsp;</p></td>
    </tr>
  </table>
          <input type="hidden" name="MM_insert" value="form1">
      </form>    </td>
  </tr>
</table>
</div>
</body>
 </html>
 <?php
mysql_free_result($rsCp);
mysql_free_result($rsIdCode);
?>
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 15h08   #13
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Toutes tes variables tu les récupére avec $_POST sauf code, elle vient d'ou celle ci ?
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 15h24   #14
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
Comme le $_get['code'] est utilisédans mon formulaire pour avoir id_code en fonction de codepostal
je dois l'initialiser
si non dans ma liste il me met
NOTICE undefinedindex code ligne 290
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 15h30   #15
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Ce que je veux dire, ton formulaire poste les données dans $_POST et seulement celui-ci est récupérer par $_GET.

En pièce jointe je t'ai mis quelques modifications avec ce que j'ai vu pour le moment.

Edit : rajoute ca
Code :
1
2
3
 
if (isset($_POST['Submit']) and $_POST['Submit'] == "Envoyer")
{
juste avant les vérifications et tu fermes l'accolade avant le code HTML.

c'est pour ne pas executer le code tant que tu n'as pas valider au moins une fois le formulaire.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 15h51   #16
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
bon je chagé ce que tu as fait initialisation et camarche
cette fois il met bien le bon id code,
la seule chose c'est que dans ma liste il met met encore iundefine index code ligne 286 , puis le code postal, maisc'est deja super il me prend le bon code
merci beaucoup
j'ose pas abuser , je vais essayer de trouver pour initialiser code corectement
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 15h52   #17
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Il n'y a pas de quoi, j'ai juste oublier de changer des $_GET['code'] en $code. L'erreur vient de la.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 15h58   #18
Invité régulier
 
Inscription : février 2007
Messages : 45
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 45
Points : 8
Points : 8
super ca Marche
super sympa en tout cas de m'avoir consacré
du temps.
alex68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 16h04   #19
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
De rien.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel 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 23h56.


 
 
 
 
Partenaires

Hébergement Web