IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Récupération d'un select, liste dynamique


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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')";

  2. #2
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $code = 1;
    if (isset($_GET['code']) $code = $_GET['code'];
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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>

  4. #4
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    Je viens de voir quelque chose :
    tout a la fin du premier post tu as
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    oui c'est ca, je dois avoir celui qui sera en fonction de code_postal selectionné

  6. #6
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    Donc tu dois récuperer $_GET['code_postal'] et non pas $_GET['code']

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    je fais ca marche touhours pas il me recupere toujours le premier de la liste

  8. #8
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    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.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    ok mais c'est un peu long
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  10. #10
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    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.

  11. #11
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    Bon petites modifications
    1er bloc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    pour plus de facilité pour toi peut etre je te metla page entiere
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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);
    ?>

  13. #13
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    Toutes tes variables tu les récupére avec $_POST sauf code, elle vient d'ou celle ci ?

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    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

  15. #15
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    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

  17. #17
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    Il n'y a pas de quoi, j'ai juste oublier de changer des $_GET['code'] en $code. L'erreur vient de la.

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Par défaut
    super ca Marche
    super sympa en tout cas de m'avoir consacré
    du temps.

  19. #19
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 786
    Par défaut
    De rien.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Récupération des données dans liste déroulante dynamique
    Par shenmicke dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 02/09/2009, 16h02
  2. Réponses: 2
    Dernier message: 21/07/2009, 10h40
  3. Réponses: 5
    Dernier message: 10/12/2008, 18h06
  4. Tableau avec listes déroulantes(récupération de chaque selection faite)
    Par claire63 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/01/2008, 17h27
  5. [html:select] valeur par défaut avec liste dynamique
    Par CPI_en_mousse dans le forum Struts 1
    Réponses: 3
    Dernier message: 02/07/2007, 14h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo