Partage
  • Partager sur Facebook
  • Partager sur Twitter

Absence d'affichage des messages d'erreur PDO

Sujet résolu
    29 avril 2013 à 12:32:39

    Hello.

    Depuis que je suis passé sur PDO, je n'ai plus aucun message d'erreur qui s'affiche... impossible de débugguer.

    J'ai cherché un peu d'où cela peut venir, tenté un truc (cf ci-dessous) mais cela ne marche pas.

    Des idées ?
    Merci...

    <?php
    // définition des codes d'accès
    
    try {
        $bdd = new PDO($dsn, $user, $password);
        $bdd->query("SET NAMES 'utf8'");
        $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch (PDOException $e) {
        echo 'Échec lors de la connexion : ' . $e->getMessage();
    }
    ?>



    • Partager sur Facebook
    • Partager sur Twitter
      29 avril 2013 à 12:36:04

      Un code qui marche pour les messages d’erreurs:

      try{
              ...
      }
      
      catch (Exception $e)
      {
              die('Erreur : ' . $e->getMessage());
      }





      -
      Edité par SeeoX 29 avril 2013 à 12:37:48

      • Partager sur Facebook
      • Partager sur Twitter
      SeeoX --- Développeur web (à ses heures perdues) || alternative à OC? --> zestedesavoir.com
        29 avril 2013 à 12:36:44

        Tu es sûr d'avoir mis des faux identifiants ? Car si il se  connecte à la BDD, je ne vois pas pourquoi il devrait te retourner un code d'erreur.

        -
        Edité par Hyperbidule 29 avril 2013 à 12:37:09

        • Partager sur Facebook
        • Partager sur Twitter
          29 avril 2013 à 12:48:38

          Salut,

          Si il y à une erreur de connexion PDO nous le fait savoir même si on active pas les exception.

          Maintenant $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

          active les exceptions pour les erreurs de requêtes ;)

          -
          Edité par Infoxp 29 avril 2013 à 12:49:07

          • Partager sur Facebook
          • Partager sur Twitter
          Infoxp ici depuis 2007
            29 avril 2013 à 12:56:57

            En fait, je me rends compte que cela n'affiche pas d'erreur non plus quand je fais des erreurs PHP (; oubliés, etc.).

            J'ai droit à une superbe page blanche sans aucune indication...

            • Partager sur Facebook
            • Partager sur Twitter
              29 avril 2013 à 12:58:45

              Si tu ajoutes ces deux lignes au début de ton script PHP, les erreurs sont-elles affichées ?

              ini_set('display_errors', '1');
              ini_set('error_reporting', E_ALL);



              • Partager sur Facebook
              • Partager sur Twitter
              Pensez à mettre votre sujet en résolu lorsque vous avez obtenu la réponse à votre problème.
                29 avril 2013 à 13:02:21

                Salut,

                As-tu défini un namespace dans ton code ? Si c'est le cas je pense qu'il faut mettre \PDOException au lieu de PDOException.

                • Partager sur Facebook
                • Partager sur Twitter
                  29 avril 2013 à 13:42:36

                  Je rejoins Lucas0, l'affichage des erreurs dans ton php.ini n'est très certainement pas activé.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    29 avril 2013 à 18:02:14

                    En effet, cela à l'air de mieux marcher, même si parfois la page blanche reste...

                    Je vais regarder ça.

                    Je vais essayer de modifier le .ini directement.

                    Meci !

                    • Partager sur Facebook
                    • Partager sur Twitter
                      22 janvier 2020 à 14:26:58 - Message modéré pour le motif suivant : Erreur de saisie


                      Absence d'affichage des messages d'erreur PDO

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown