1
| $select = $connection->query("SELECT * FROM mauvaisetable"); |
Cela est un réél problème car par la suite, nous executons une serie de traitement pour les résultats de cette requète en partant du principe que cette dernière a fonctionné... Si elle échoue à cause d'une erreur de syntaxe, nous risquons de mettre du temps à comprendre que le problème se situe au niveau de la requète et pas au niveau de son traitement...
Pour régler le soucis, la première étape va être d'indiquer à notre connection que nous voulons que des erreurs soit émises, pour cela modifier notre fichier de connection de cette façon :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| // Connection au serveurtry { $dns = 'mysql:host=localhost;dbname=ma_base_de-donnees'; $utilisateur = 'sergio'; $motDePasse = 'azerty'; // Options de connection $options = array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8", PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ); $connection = new PDO( $dns, $utilisateur, $motDePasse, $options );} catch ( Exception $e ) { echo "Connection à MySQL impossible : ", $e->getMessage(); die();} |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| // Connection au serveurrequire_once('conf/connection.php');// Récupération des donnéestry { // On envois la requète $select = $connection->query("SELECT * FROM createurs"); // On indique que nous utiliserons les résultats en tant qu'objet $select->setFetchMode(PDO::FETCH_OBJ); // Nous traitons les résultats en boucle while( $enregistrement = $select->fetch() ) { // Affichage des enregistrements echo '<h1>', $enregistrement->nom, ' ', $enregistrement->prenom, '</h1>'; }} catch ( Exception $e ) { echo "Une erreur est survenue lors de la récupération des créateurs";} |
Aucun commentaire:
Enregistrer un commentaire