Probleme d'affichage de mes enregistrements

Fermé
abdoulayecoumba - Modifié par Whismeril le 16/10/2015 à 20:03
DelNC Messages postés 2234 Date d'inscription samedi 25 octobre 2014 Statut Membre Dernière intervention 22 février 2020 - 16 oct. 2015 à 22:42
Bonjour,

je suis nouveau en programmation, j'ai un probleme avec mon code qui doit me permettre d'afficher les enregistrements contenus dans ma base de données ( amateurs) plus précisément dans ma table (agents) qui comporte les colonnes ''prenom", ''nom'' , ''adresse'
mais wamp me signale l'erreur suivante :
Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line 7

j'ai beau fouiné dans la toile à la recherche d'une solution , je l'avoue tout ce que j'ai trouvé une multitudes de solutions et de reponses que j'ai tentées d'appliquer à chaque qu'il me semblait y avoir compris queque chose, ,alheureusement toutes mes tentatives sont réstée vaine .

Est ce que quelqu'un pourrait m'aider à trouver une solution avec des explications simple facile à comprendre pour un débutant comme moi avec des expréssions moins techniques de pros car je m'y perds souvent

mon code:


<html>

                <?php
    
    $bdd = new PDO('mysql:host=localhost;dbname=amateurs','root','');
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                
    $req1 = $bdd->query('SELECT * FROM agents );
    while($donnees = $req1->fetch());
    {
    echo $donnees['prenom'].':'.$donnees['nom'].':'.$donnees['adresse'].'<br/>';
    }
    
                 ?>
      
    
</html>





EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI

Merci d'y penser dans tes prochains messages.


?

1 réponse

DelNC Messages postés 2234 Date d'inscription samedi 25 octobre 2014 Statut Membre Dernière intervention 22 février 2020 2 002
16 oct. 2015 à 22:42
Bonjour,

Le message d'erreur indique qu'il y a plus de colonne dans la requête que de colonnes que vous affichez.

Pour récupérer les données
$query      = "SELECT   nom, prenom, agent ";
$query .= "FROM agents ";
$query .= ";";
$result = execute_query($query);
display_table_agents($result);


Pour l'affichage des données

function display_table_agents($result) {
echo "<table border=1>\n";
//HEADER ROW
echo "<tr>\n";
echo " <th width=150> Nom </th>\n";
echo " <th width=150> Prenom </th>\n";
echo " <th width=150> Adresse </th>\n";;
echo "</tr>\n";
//DATA ROWS
while($row = mysql_fetch_array($result)) {
echo "<tr>\n";
echo " <td class=\"center\">" . $row[0] . "</td>\n";
echo " <td class=\"center\">" . $row[1] . "</td>\n";
echo " <td class=\"center\">" . $row[2] . "</td>\n";

echo "</tr>\n";
}//end while
echo "</table>\n";
}//end function
0