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 :

[Tableaux] select multiple et concatenation array


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut [Tableaux] select multiple et concatenation array
    Bonjour,


    j'ai bien lu les FAQ et beaucoup des messages mais je ne m'en sors pas.
    Je souhaite que les choix multiples d'un select soient concaténés en une seule variable, et que cette variable soit intégrée dans ma bdd.
    pour l'instant, j'ai juste mon select multiple, car je ne sais pas du tout comment m'y prendre pour la déclaration de variable.

    Merci de votre aide !

    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
     <?php
     
    $listelieu=array(
    "75"=>"75",
    "77"=>"77",
    "78"=>"78",
    "91"=>"91",
    );
     
    echo "<select name='lieu[]' multiple>";
    foreach ($listelieu as $key=>$value) {
    $selected = ($_POST['lieu'] == $key)?"selected":"";
    echo '<option value="'.$key.'" '.$selected.'>'.$value.'</option>';
    }
    echo "</select>";	
    ?>

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Bonjour

    Tu récupères ton select multiple dans un tableau via $_POST['lieu'] etpour passer du tableau à une chaine et réciproquement utilise implode

  3. #3
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut
    merci beaucoup de ton aide, j'ai essayé, mais il y a vraiment qq chose qui n'est pas clair pour moi avec les tableaux.

    j'ai suivi l'exemple et j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $array = array( $_POST['lieu']);
    $lieux = implode(",", $array);
     
    echo $lieux;
    et bien sûr ca me donne "Array"

    alors que bien sûr le simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    foreach( $_POST['lieu'] as $value ) 
        echo $value;
    est ok.

    Quelle est l'étape qui me manque ?

  4. #4
    Membre averti Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Points : 378
    Points
    378
    Par défaut
    Il faudrait faire plutot comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $lieux = implode(',',$_POST['lieu']);
     
    echo $lieux;

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    $_POST['lieu'] est déjà un tableau (tu l'as défini toi-même en mettant name=lieu[] dans ton select)

    Donc inutile de passer par un array, la solution que te donne Asmodean devrait parfaitement fonctionner

  6. #6
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut
    Merci à vous 2, effectivement, quand je ne cherche pas à transformer un tableau en un autre tableau ca va mieux

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

Discussions similaires

  1. [PHP 5.0] Sélectionner les items d'un select multiple depuis un array
    Par Gecko62 dans le forum Langage
    Réponses: 4
    Dernier message: 20/08/2014, 09h54
  2. Réponses: 6
    Dernier message: 10/08/2009, 15h24
  3. Réponses: 1
    Dernier message: 21/03/2007, 15h21
  4. [Tableaux] Pb de récupération d'un select multiple
    Par Manuxy dans le forum Langage
    Réponses: 18
    Dernier message: 06/09/2006, 16h50
  5. Réponses: 14
    Dernier message: 18/08/2006, 18h54

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