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 serveur try { $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 serveur require_once ( 'conf/connection.php' ); // Récupération des données try { // 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