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

PHP & Base de données Discussion :

Un problème avec PDO [PDO]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 22
    Points : 17
    Points
    17
    Par défaut Un problème avec PDO
    Bonjour à tous,

    voilà jusqu'à présent lorsque je fesais des requêtes SQL je ne renvoyait qu'une unique ligne car je n'en avais pas besoin de plus, maintenant que je code mon espace news je voudrait bien sûr en renvoyer plusieurs et pas qu'une seul

    Toutes mes requêtes SQL son fait en PDO

    Ma requête SQL :
    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
    <?php
    $requete = $pdo->prepare("SELECT * FROM news");
     
    $requete->execute();
     
    if ($result = $requete->fetch(PDO::FETCH_ASSOC)) {
     
    	$requete->closeCursor();
    	return $result;
    }
     
    else { 
     
    	return false;
     
    }
    ?>
    et lorsque je souhaite voir mes résultat je fait un print_r($result);

    et je n'obtiens qu'un array contenant qu'une unique ligne de mon tableau, il n'y a pas les trois ligne qui sont présente dans ma base de donnée.

    1 - Pourquoi je n'obtiens qu'une unique ligne? dois-je utiliser autre chose que PDO::FETCH_ASSOC
    2 - Lorsque j'aurais mes différentes lignes comment dois-je écrire mon while($news = quelquechose), car je suis encore malheureusement habitué au mysql_fetch_array() et je ne voit pas comment je doit afficher toutes mes lignes.

    Je vous remercie d'avance pour toutes vos réponses.

  2. #2
    Membre chevronné Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Points : 1 895
    Points
    1 895
    Par défaut
    pour plusieurs lignes tu peux faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $requete = $pdo->prepare('SELECT * FROM news');
    $requete->setFetchMode(PDO::FETCH_ASSOC);
    $requete->execute();
     
    while ($ligne = $requete->fetch()) {
        // ...
    }
     
    unset($requete);
    GNAP !

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 22
    Points : 17
    Points
    17
    Par défaut
    Merci de ta réponse,

    après plusieurs temps j'ai compris mon stupide problème qui était de faire un fetchall au lieu d'un simple fetch pour récupérer toutes les ligne du tableaux.

    Encore merci pour la méthode.

    Bonne fin de week end

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

Discussions similaires

  1. [PDO] Problème avec PDO mysql
    Par lucci57 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/07/2014, 21h19
  2. [PHP 5.0] Problème avec PDO::FETCH_GROUP
    Par astroma dans le forum Langage
    Réponses: 0
    Dernier message: 21/07/2012, 15h32
  3. probléme avec PDO fetch
    Par ryodo dans le forum Langage
    Réponses: 9
    Dernier message: 26/04/2011, 15h27
  4. [PDO] Problème avec PDO depuis migration
    Par XData dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 23/07/2009, 16h33
  5. [PDO] Problème de PDO avec migration mysql -> mssql
    Par bulkathos dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/07/2007, 12h15

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