(résolu) Class 'PDO' not found

Class 'PDO' not found (résolu) - PHP - Programmation

Marsh Posté le 16-05-2011 à 15:02:27    

Bonjour,
 
J'ai un souci pour me connecter sur une BDD MySQL
J'ai pourtant bien activé le module dans php.ini
 
J'ai le message d'erreur suivant :

Code :
  1. # php confirmation.php
  2. PHP Fatal error:  Class 'PDO' not found in /product/sat/confirmation.php on line 6


 
Mon code (minimaliste) est le suivant :

Code :
  1. <?php
  2. include 'functions.php';
  3. /* Stockage du ticket dans la BDD */
  4. foreach(PDO::getAvailableDrivers() as $driver)
  5. {
  6. echo $driver.'
  7. ';
  8. }
  9. try
  10. {
  11. $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
  12. $bdd = new PDO('mysql:host=127.0.0.1;port=5101;dbname=BDD','login','password', $pdo_options);
  13.  
  14.   $reponse = $bdd->prepare('SELECT * FROM sat_demandes WHERE hash = ?');
  15.   $reponse = $bdd->execute(array($_GET['hash']));
  16.  
  17.   echo $_GET['hash'];
  18.  
  19.   while ($donnees = $reponse->fetch())
  20.   {
  21.   ?>
  22.  
  23.   Emetteur : <?php echo $donnees['emetteur']; ?> <br/>
  24.   Détails de la demande : <?php echo $donnees['action']; ?> <br/>
  25.   Date d'emission : <?php echo ConvertDate($donnees['date_emissionj']); ?> <br/>
  26.  
  27.   <?php
  28.   }
  29.  
  30. $reponse->closeCursor();
  31. }
  32. catch (Exception $e)
  33. {
  34.         die('Erreur : ' . $e->getMessage());
  35. }
  36. ?>


 
Quand je vais sur ma page j'ai le message suivant :

Citation :


mysql


 
Je précise qu'avec un code similaire j'arrive a me connecter à cette base pour y injecter des données.
 
Savez vous d'où viens mon problème ?
 
Merci d'avance pour votre aide


Message édité par bichtoubard le 16-05-2011 à 16:52:06
Reply

Marsh Posté le 16-05-2011 à 15:02:27   

Reply

Marsh Posté le 16-05-2011 à 16:51:32    

Ok j'ai trouvé mon erreur
 

Code :
  1. $reponse = $bdd->prepare('SELECT * FROM sat_demandes WHERE hash = ?');
  2.   $reponse = $bdd->execute(array($_GET['hash']));


 
est mauvais, doit être remplacé par
 

Code :
  1. $reponse = $bdd->prepare('SELECT * FROM sat_demandes WHERE hash = ?');
  2.   $reponse->execute(array($_GET['hash']));


 
L'erreur PDO n'a rien a voir, elle est juste renvoyée par php quand on lance en ligne de commande un test de validation, il ne faut pas s'y fier.


Message édité par bichtoubard le 16-05-2011 à 16:52:44
Reply

Marsh Posté le 18-05-2011 à 00:03:22    

bravo d'avoir trouvé la réponse seul et surtout merci de la partager
 
l'inverse est malheureusement trop souvent vrai !!
 
 
 :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed