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 des données d'une liste déroulante


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Récupération des données d'une liste déroulante
    Bonjour,

    Mon problème peut vous paraître très simple: Dans un formulaire, je fais appel à un menu déroulant dynamique faisant appel une table de codes postaux et villes. Je veux simplement récupérer les données sélectionnées dans ma liste (code postal ('vil_cp') et localité('vil_nom') et les enregistrer dans une autre table lors de la validation de mon formulaire.

    Items apparaissant dans mon menu déroulant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <option value="<?php echo $row_Recordset1['vil_id']?>"><?php echo $row_Recordset1['vil_cp']?> <?php echo $row_Recordset1['vil_nom']?></option>
    Code d'enregistrement:
    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
     
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1"))
    {
     
      $insertSQL = sprintf("INSERT INTO annonceur (mailAnnonceur, nomAnnonceur, prenomAnnonceur, adresseAnnonceur, cpAnnonceur, localiteAnnonceur, paysAnnonceur, telAnnonceur, mpAnnonceur, dateinscription, IDcategorie, `check`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                           GetSQLValueString($_POST['mailAnnonceur'], "text"),
                           GetSQLValueString($_POST['nomAnnonceur'], "text"),
                           GetSQLValueString($_POST['prenomAnnonceur'], "text"),
                           GetSQLValueString($_POST['adresseAnnonceur'], "text"),
                           GetSQLValueString($_POST['cpAnnonceur'], "text"),
                           GetSQLValueString($_POST['vil_nom'],"text"),
                           GetSQLValueString($_POST['paysAnnonceur'], "text"),
                           GetSQLValueString($_POST['telAnnonceur'], "text"),
                           GetSQLValueString($_POST['mpAnnonceur'], "text"),
                           'NOW()',
                           GetSQLValueString($_POST['IDcategorie'], "int"),
                           GetSQLValueString(isset($_POST['check']) ? "true" : "", "defined","'Y'","'N'"));
     
      mysql_select_db($database_rsimmo, $rsimmo);
      $Result1 = mysql_query($insertSQL, $rsimmo) or die(mysql_error());
    }

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Et quel est ton problème ?
    qu'obtiens-tu avec ton code actuel ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Les valeurs de 'code postal' et 'localité' ne s'enregistrent pas dans ma 2ème table lorsque je valide.

    En gros, je veux "copier" les données 'code postal' et 'localité' de ma table 1 (que je selectionne dans mon menu déroulant) vers les champs 'code postal' et 'localité' de ma table 2

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ces enregistrements peuvent être relationnels ; c'est à dire que tu n'enregistres pas le code postal et le nom de la ville dans la table annonceur mais seulement l'id de reference de l'autre table.

  5. #5
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Bonjour,

    dans ton exemple, tu récupères en retour de formulaire la valeur de l'id correspondant à l'enregistrement dont tu veux le CP et la ville.

    donc il faut que tu récupères ces informations avant de faire l'enregistrement dans la seconde table. Ce qui nécessite une requête SQL au préalable.
    L'inconvénient : une perte de performance.

    Une autre solution consisterait à mettre ces valeurs dans l'attribut option de ton select en les concaténant avec un séparateur (ex: 75000|Paris ) puis d'extraire ces valeurs lors de la phase d'insertion dans la seconde table, avec la fonction explode par exemple.
    Inconvénient: c'est pas bien propre...

    j'opterais donc pour la première solution.

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

Discussions similaires

  1. Récupération de données avec une liste déroulante
    Par zorbo dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 16/01/2009, 08h08
  2. [MySQL] comment insérer des données d'une liste déroulante dans un champ texte
    Par berti dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/01/2008, 09h12
  3. Réponses: 4
    Dernier message: 24/10/2007, 10h43
  4. Réponses: 2
    Dernier message: 19/07/2007, 17h01
  5. récupération des données via une liste déroulante
    Par rahan_dave dans le forum Access
    Réponses: 1
    Dernier message: 13/10/2005, 12h27

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