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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  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 : 42
    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 : 42
    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 : 42
    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']

+ 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