PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 19-10-2015 00:19:00

abdoulayecoumba
Membre
Inscription : 07-10-2015
Messages : 13

Rectifications avec PDO

Bonsoir finalement je suis allé me replonger dans les cours disponibles sur le net traitant PDO notamment de la connexion aux bases de données de la gestion des erreurs avec je rappelle j'ai créé une base de données dénommée ''amateurs'' et qui contient une table dénommée ''agents'' ayant 3 colonnes suivantes : ''prenom'' ''nom'' ''adresse'' (il s'agit des noms de chaque colonne tels que je les ai écrits dans la base avec l'interface mysql de wamp ) et que j'ai rempli via un formulaire jusque là tout marche bien la table reçoit correctement touts les enregistrements que j'y envois.
Mais c'est quand je veux afficher les données de la table que j'ai des problèmes.
J'ai essayé d'utiliser le try/catch pour la connexion avec la base de données je pense l'avoir réussi car si j’exécute le code jusqu'à la ligne 13 le navigateur m'affiche une page blanche donc je cocois tel que j'ai rédigé le code qu'il n'y a pas d'erreur de connexion.
Je voudrais que quelqu'un me donne son avis sur le reste du code car le navigateur m'affiche les erreurs suivantes :
Notice: Undefined index: prenom in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line 27

Notice: Undefined index: nom in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line 27

Notice: Undefined index: adresse in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line

Je rappelle que la ligne 27 est celle qui correspond à l'avant derniere ligne du code ci dessous  :

echo $donnee['prenom'].':'.$donnee['nom'].':'.$donnee['adresse'].'<br/>';

voici le code :

<html>

     <?php
            //tentative de connexion à la base de données
        try
                       {
                $conect = new PDO('mysql:host=localhost;dbname=amateurs','root','');
            }
                            catch (PDOException $e)
            {       
                             echo "Problème de connexion avec la base de donnée / Database error<br/>".$e->getMessage();
                             die();
                                           }
           
        try   
            {   
                $retour = $conect->query('SELECT * FROM agents');
                                    $donnee = $retour->fetchAll();
            }
        catch (PDOException $e)
            {
                echo "Problème pour lire la base <br/>Opération annulée";
                die();
                                  }
       
       
                           echo $donnee['prenom'].':'.$donnee['nom'].':'.$donnee['adresse'].'<br/>';         
       
        $base = null;

    ?>
                       
               
</html>

Hors ligne

#2 19-10-2015 00:37:34

tof73
Membre
Inscription : 21-12-2014
Messages : 156
Site Web

Re : Rectifications avec PDO

soit fetch() et la ligne actuelle
soit fetchall() et
echo $donnee[0]['prenom'].':'.$donnee[0]['nom'].':'.$donnee[0]['adresse'].'<br/>';

Hors ligne

#3 19-10-2015 12:14:51

abdoulayecoumba
Membre
Inscription : 07-10-2015
Messages : 13

Re : Rectifications avec PDO

Salut tof73
J'ai fait ce que vous m'avez suggéré avec fetchall(), mais ca ne m'affiche que le premier enregistrement de la table je vous redonne le code rectifié:

<html>

     <?php
            //tentative de connexion à la base de données
        try
            {
                $conect = new PDO('mysql:host=localhost;dbname=amateurs','root','');
            }
                           catch (PDOException $e)
            {       
                               echo "Problème de connexion avec la base de donnée / Database error<br/>".$e->getMessage();
                                die();
                                          }
           
        try   
            {   
                $retour = $conect->query('SELECT * FROM agents');
                                    $donnee = $retour->fetchAll();
            }
        catch (PDOException $e)
            {
                echo "Problème pour lire la base <br/>Opération annulée";
                die();
                               
                                 }
          echo $donnee[0]['prenom'].':'.$donnee[0]['nom'].':'.$donnee[0]['adresse'].'<br/>';
         
       
        $base = null;

    ?>
                       
               
</html>

Hors ligne

Pied de page des forums