Bonjour,
j'ai créé une classe bdd qui hérite de PDO pour créer une connection. Mon souci est qu'il dit ne pas trouver la classe et je comprends pas.
index.php :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php //autoloading include_once 'Autoloader.php'; use _classes\Bdd\Bdd; $Bd = new Bdd('localhost','support_eis', 'root', ''); var_dump($Bdd); ?>
autoloader.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 <?php class Autoloader { static function register() { define('DIR_ROOT', __DIR__.DIRECTORY_SEPARATOR); $autoloader = function($full_class_name) { // on prépare le terrain : on remplace le séparteur d'espace de nom par le séparateur de répertoires du système $name = str_replace('\\', DIRECTORY_SEPARATOR, $full_class_name); // on construit le chemin complet du fichier à inclure :a // il faut que l'autoloader soit toujours à la racine du site $path = DIR_ROOT.$name.'.php'; // on vérifie que le fichier existe et on l'inclut // sinon on passe la main à une autre autoloader (return false) if (is_file($path)) { include $path; return true; } else { return false; } }; spl_autoload_register($autoloader); } } Autoloader::register();
Bdd.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 <?php class Bdd extends PDO { public $Bdd; function __construct($Bddhost, $Bddname, $Bdduser, $Bddpswd) { $this->Bdd = new PDO('mysql:host=' . $this->Bddhost.'; Bddname=' . $this->Bddname ,// virgule ici et pas point-virgule $this->Bdduser, $this->Bddpswd); } }
Message d'erreur :Pourquoi ?Fatal error: Uncaught Error: Class '_classes\Bdd\Bdd' not found in C:\wamp64\www\eis_oo2\index.php on line 7







Répondre avec citation
.



Partager