Connexion a une base de donnée avec "fetch"

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Connexion a une base de donnée avec "fetch"

Re: Connexion a une base de donnée avec "fetch"

par or 1 » 11 déc. 2018, 00:29

Call to a member function fetch() on boolean
ça veux dire que $reponse vaux false
$reponse vaux false quand la requête sql ("SELECT * FROM partition") est invalide. une autre possibilité d'erreur est que la connexion à la base de donnée ne s'est pas bien faite donc la requête, bien que valide, n'a pas pu s’exécuter.

Re: Connexion a une base de donnée avec "fetch"

par Progrmmeuramateur » 11 déc. 2018, 00:06

J'ai tenté d'améliorer mon code de plusieurs manières j'en arrive toujours au même probleme : <br/>
Ce message d'erreur s'affiche :<br/>
"Fatal error: Uncaught Error: Call to a member function fetch() on boolean in C:\wamp64\www\Haru2\page_de_partitions.php on line 29"<br/>
suivi de celui ci :<br/>
"Error: Call to a member function fetch() on boolean in C:\wamp64\www\Haru2\page_de_partitions.php on line 29"<br/>
<br/>
J'ai lu la doc sur les fonctions query et fetch mais il me semble que je les ai bien utilisé, si quelqu'un pouvait me venir en aide ?<br/>
voici mon code actuel :
<PHP><s>
</s><!DOCTYPE html>
<html>
<head>
        <meta charset="utf-8" />
        <link rel="stylesheet" href="style.css" />
        <title>Haru entreprise</title>
    </head>

    <body>

        <?php include ("includes/en-tete.php"); ?>

        <?php include ("includes/menus.php"); ?>

            <div <section class="element3">
    	<a id="acceuil"><h3>Listes des partitions : </h3></a>
    	<p>Mettre le systeme de telecharement d'une partitions</n></p>
            <?php
            try
            {
                $bdd = new PDO('mysql:host=localhost;dbname=visiteurs;charset=utf8', 'root', '');
            }
            catch(Exception $e)
            {
                    die('Erreur : '.$e->getMessage());
            }
            $reponse = $bdd->query('SELECT * FROM partition');

            while($donnees = $reponse->fetch())
            {
            ?>
            <p>
                Ce morceau s'appelle <?php echo $donnees ['Titres']?></br>
                Il a été composé par <?php echo $donnees ['Auteurs']?></br>
                Il a été mis en ligne par <?php echo $donnees ['Uploaders']?></br>
                Sa note est de <?php echo $donnees ['Notes']?> sur 5</br>
                C'est un morceau de <?php echo $donnees ['Style']?>
                Il est composé de <?php echo $donnees ['Nb_d_instruments']?> plus precisémment de : <?php echo $donnees ['Instruments']?>
            </p>
            <?php
            }

            $reponse->closeCursor();
            ?>
            </section></div></div>
            
        <?php include ("includes/pied_de_page.php");?>

    </body>
</html><e>
</e></PHP></r>

Re: Connexion a une base de donnée avec "fetch"

par Progrmmeuramateur » 10 déc. 2018, 22:36

J'ai beau lire et relire la doc que tu m'as envoyé je n'arrive pas a saisir mon erreur de code. Est-ce que quelqu'un pourrait mieux m'expliquer mon erreur ?

Re: Connexion a une base de donnée avec "fetch"

par or 1 » 09 déc. 2018, 23:22

voir http://php.net/manual/fr/pdo.query.php pour la valeur de retour de la fonction query.

Re: Connexion a une base de donnée avec "fetch"

par Progrmmeuramateur » 09 déc. 2018, 23:19

Il en a un deuxième que je comprend pas et c'est celui la qui parle de la fonction fetch :
Fatal error: Uncaught Error: Call to a member function fetch() on boolean

Re: Connexion a une base de donnée avec "fetch"

par Progrmmeuramateur » 09 déc. 2018, 23:00

le message d'erreur est :
Parse error: syntax error, unexpected end of file at line 43

Re: Connexion a une base de donnée avec "fetch"

par or 1 » 09 déc. 2018, 22:55

echo $donnees['Titres'];
au lieu de
echo $donnees ['Titres']?>;
aidera.

nous donner le message d'erreur exact nous aidera.

Connexion a une base de donnée avec "fetch"

par Progrmmeuramateur » 09 déc. 2018, 22:48

Bonjour je dois finir de programmer un site internet mais je rencontre un problème au moment de la connexion entre la base de données et le code PHP.
Voici mon code :
            <?php
            try
            {
                $bdd = new PDO('mysql:host=localhost;dbname=bdd visiteurs;charset=utf8', 'root', '');
            }
            catch(Exception $e)
            {
                    die('Erreur : '.$e->getMessage());
            }

            $reponse = $bdd->query("SELECT Titres FROM partition");
            while ($donnees = $reponse->fetch())
            {
                echo $donnees ['Titres']?>;
            }

            $reponse->closeCursor();
            ?>
Il m'affiche un message d'erreur comme quoi la fonction "fecht" a un problème .
J'aurais besoin d'aide pour savoir ou est mon erreur