Affichage des données

Bonjour à tous,

Je viens vers vous car je suis face a un petit problème que je ne comprends pas.

J'ai la requête suivante :

$requete = $bdd->prepare("SELECT mail, titre, ma.id AS ID_manga, me.id AS ID_membre, autre_site FROM membre me, mangas ma WHERE me.manga=ma.id AND me.id= :id");

$requete->execute(array(':id' => $_SESSION['id']));


J'ai le résultat suivant :

mail
titre
id
autre_site
test@hotmail.fr
Sword art online
11

Mais je n'arrive pas a l'afficher le résultat avec php, pourtant j'ai bien un résultat :/

Voici le code php :

 
<select name="manga">

<?php

 while($info_profil = $requete->fetch()){

  echo "<option value='".$info_profil['id']."'>".$info_profil['titre']."</option>";
 }

 ?>

</select>


Merci de vos réponse :)

Ps : résultat du var_dump :

array (size=10)
'mail' => string 'test@hotmail.fr' (length=22)
0 => string 'test@hotmail.fr' (length=22)
'titre' => string 'Sélectionner un manga' (length=21)
1 => string 'Sélectionner un manga' (length=21)
'ID_manga' => string '6' (length=1)
2 => string '6' (length=1)
'ID_membre' => string '11' (length=2)
3 => string '11' (length=2)
'autre_site' => string '' (length=0)
4 => string '' (length=0)

4 réponses

  1. C'est vraiment ça ton code ? Où est l'instruction var_dump ? Tu donnes le résultat de l'instruction mais on ne la voit pas.
    Et pourquoi y a-t-il un seul résultat de var_dump ? Il y a une seule ligne dans ta table ?
    Et ton code est très différent de celui que tu donnais dans ton premier message.
    Tu passes vraiment du php au html sans fermer la balise php ? Regarde avant le <select>, il n'y a pas de ?>
    1. Peux-tu donner le vrai code, pas une mauvaise copie ?
      Avec la requête, le var_dump et la boucle d'affichage ?
      1. Oui bien sur,
        Concrètement ce que je cherche a faire c'est d'attribué une valeur par défaut a un select, le petit hic, c'est que celle-la est variable suivant les utilisateur.

           
        $requete = $bdd->prepare("SELECT * FROM membre WHERE id= :id");
        $requete->execute(array(':id' => $_SESSION['id']));
           
        $info_profil = $requete->fetch();
                                
        $requet_manga = $bdd->prepare("SELECT * FROM mangas");
        $requet_manga->execute(array($_SESSION['id']));
                                
        $list_manga = $requet_manga->fetch();   
        
        
        <select name="manga">
                                                
        <option value="<?php echo $_SESSION['manga']; ?>" selected="selected"><?php echo $list_manga['titre']; ?></option>
                                                
        <?php
         while($list_manga = $requet_manga->fetch())
        {
         echo "<option value='".$list_manga['id']."'>".$list_manga['titre']."</option>";
         }
        ?>
        </select>


        Le var_dump($list_manga);

        array (size=8)
        'id' => string '6' (length=1)
        0 => string '6' (length=1)
        'titre' => string 'Sélectionner un manga' (length=28)
        1 => string 'Sélectionner un manga' (length=28)
        'description' => string '' (length=0)
        2 => string '' (length=0)
        'image' => string '' (length=0)
        3 => string '' (length=0)
    2. Oui, tu as bien quelque chose pour 'ID_manga', mais ce n'est pas 'ID_manga' que tu affiches. C'est 'id'. Tu ne vois pas la différence ?
      1. Oui, j'ai éditer le code, et oublier de modifier la boucle, mais j'affiche bien ID_manga.

        Excuse moi pour la confusion
    3. Bonjour

      Le résultat de quel var_dump ? Il n'y en a pas dans le code que tu montres.
      Si c'est celui de $info_profil, il montre bien que le champ 'id' n'existe pas, donc le $info_profil['id'] dans ton echo ne risque pas de marcher.
      1. Bonjour,

        oui c'est bien celui de $info_profil, je comprends pas, il me retourne bien 11 pour le membre et 6 pour le ID_manga ?

        Merci de ta réponse