Bonsoir,
je crée une nouvelle discussion pour ne pas polluer celle de Dendrite (https://www.developpez.net/forums/d1...acilement-pdo/)
Je tente donc d'utiliser ce tuto. Pour tester, j'ai créé un fichier de test, mais qui ne marche pas
testcalendar.php :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <!DOCTYPE html> <html lang="fr"> <head> <title>test calendar</title> </head> <body> <?php include (dirname(__DIR__).'/includes/connect_mysql.php');echo "testcalendar8"; ?> </body> </html>
connect_mysql.php :
Volontairement, je sépare la connexion des requêtes.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <?php spl_autoload_register(function ($class) { include '../bdd/class_' . $class . '.php'; }); //on met tous nos traitements dans un bloc try & catch pour gérer les exceptions try { //simple objet $o_db=new MyPdo("calendar");echo "connect 9"; $bdd=$o_db->retour_pdo();//var_dump($bdd); } catch (Exception $e) { //s'il y a un problème PHP ou SQL, tout s'affichera ici print "Erreur ! " . $e->getMessage() . "<br/>"; } ?>
class_MyPdo.php :
Mon souci : aucun echo ne s'affiche, donc ça bloque avant celui de la ligne 9 de connect_mysql.php
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <?php error_reporting(E_ALL ^ E_DEPRECATED ^ E_NOTICE); ini_set('display_errors','1'); echo "<br/>4 class_MyPdo.php<br/>"; <?php // MyPDO class MyPdo { protected $name=''; protected $options=''; public function __construct($name){ $this->name=$name; $this->options = array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8", PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,//mode dev par exemple PDO::ATTR_EMULATE_PREPARES => false,//important sur les configs récentes PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ//pour le mode objet ); } public function retour_pdo(){ $dsn='mysql:localhost;port=3306;dbname='.$this->name; $login='calendar'; $mdp='caché'; $pdo=new PDO($dsn,$login,$mdp,$this->options); return $pdo; } } ?>
Peut-on m'aider ?
Partager