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 donnée tableau


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 189
    Points : 68
    Points
    68
    Par défaut Récupération donnée tableau
    Bonjour à tous ,

    Voilà j'ai un petit soucis concernant une liste déroulante car la totalité des données de mon tableau ne s'affiche pas , c'est un tutoriel que je suis actuellement et je suis donc ce que le gars dis mais tout ne fonctionne pas comme prévu , j'ai donc résolu certains problémes mais là je suis actuellement bloqué .

    le code d'origine est le suivant pour le tableau
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $select = $db -> query('SELECT id, name FROM categories ORDER BY name ASC');
    $categories = $select -> fetchAll();
    $categories_list = array();
    foreach ($categories as $category){
    	$categories_list[$category['id']] = $category['name'];
    }
    et on peut voir que l'image ci-dessous que les données de ma base sont bien stocké dans le tableau
    Nom : realisation.PNG
Affichages : 75
Taille : 24,1 Ko

    Ensuite j'ai crée une fonction pour pouvoir sélectionné les données comme le gars a fait , c'est le code d'origine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function select($id, $options = array()){
    	$return = "<select class ='form-control' id='$id' name='$id'>";
    	foreach ($options as $id => $value) {
    		$return = "<option value ='$id'>$value</option>";
    		# code...
    	}
    $return ='</select>';
    return $return;
    }
    puis ensuite je l'affiche dans ma forme mais rien ne se passe... peut etre du au Bootstrap car j'ai déjà rencontré le meme probléme lors d'un input
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <div class="form-group">
    	<label for='category_id'>Catégorie</label>
    	<?php echo select('category_id', $categories_list); ?>
    </div>
    J'ai donc fais des modifications pour essayé de pouvoir affiché quelque chose , en enlevant le select de ma fonction et en le passant directement dans ma div et la j'ai bien quelque chose qui s'affiche mais seul la derniére valeur de mon tableau s'affiche , ici YouTube , donc je ne sais pas trop comment m'y prendre sachant que je suis pas un expert , si quelqu'un aurait une solution à mon probléme sa serait vraiment sympa
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div class="form-group">
    	<label for='category_id'>Catégorie</label>
    	<select class ='form-control' id='$id' name='$id'><?php echo select('category_id',$categories_list); ?></select>
    </div>
    Merci à tous d'avance

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 189
    Points : 68
    Points
    68
    Par défaut
    J'ai trouvé une solution pour pouvoir affiché le contenu du tableau dans ma liste déroulant sans le return , est ce que quelqu'un peut me confirmer que cette solution est correcte avant que j'aille plus loin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function select($id, $options = array()){
    	foreach ($options as $id => $value) {
    		$return = "<option value ='$id'>$value</option>";
    		# code...
    		echo $return;
    	}
     
    }
    avec cette solution j'ai bien le contenu du tableau dans ma liste déroulante contrairement à ce que propose le gars

  3. #3
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Tu pourrais même faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function select($id, $options = array()){
    	foreach ($options as $id => $value) {
    		echo  "<option value ='$id'>$value</option>";
    		# code...
    	}
     
    }
    Enfin cela dépend de ton "# code..."
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 84
    Points : 83
    Points
    83
    Par défaut
    pour une liste déroulante tu peux faire assez simple en utilisant des post ou get pour garder sélectionné,

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php
    echo "<form name='form' method='POST' action=''>";
       echo "<select name='un_nom' onchange='form.submit();'>";
       foreach($nom_du_tableau as $n_importe){
       ?>
          <option <?php if(isset($_POST['un_nom']) && $_POST['un_nom']== $n_importe){echo "selected";} ?>><?php echo $n_importe; ?></option>
       <?php
       }
       echo"</select>";
    echo"</form>";
    ?>

    en plus de ça tu n'auras aucun mal à récupérer la sélection
    Sans pomme nous n'aurions jamais découvert la gravité... Sans tête Non plus.

Discussions similaires

  1. Syntaxe récupération données tableau
    Par zozoman dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 16/05/2013, 16h54
  2. Récupération données tableau PHP/HTML
    Par mooky_64 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 15/05/2010, 14h29
  3. [MySQL] Récupération données MySQL dans un tableau
    Par joebiloute202 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 20/08/2008, 12h09
  4. Récupération de données tableau en PL/SQL
    Par sbonidan dans le forum PL/SQL
    Réponses: 1
    Dernier message: 23/01/2007, 13h23
  5. Réponses: 3
    Dernier message: 29/08/2006, 16h02

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