diff --git a/.htaccess b/.htaccess new file mode 100644 index 0000000..2abbab0 --- /dev/null +++ b/.htaccess @@ -0,0 +1,7 @@ +RewriteEngine On + +# Empêcher la réécriture des fichiers existants +RewriteCond %{REQUEST_FILENAME} !-f + +# Si le fichier n'existe pas, rediriger vers public/index.php avec l'URL dans le paramètre "url" +RewriteRule ^(.*)$ public/index.php?url=$1 [QSA,L] \ No newline at end of file diff --git a/configure/autoloader/autoload.php b/configure/autoloader/autoload.php index b3d9bbc..dad8346 100644 --- a/configure/autoloader/autoload.php +++ b/configure/autoloader/autoload.php @@ -1 +1,36 @@ __DIR__ . '/../routing/', + ]; + + // Parcourir les namespaces définis pour trouver une correspondance + foreach ($namespaceMap as $namespacePrefix => $baseDir) { + // Vérifier si la classe utilise le préfixe du namespace + if (strpos($className, $namespacePrefix) !== 0) { + continue; // Passer à la prochaine itération si aucun préfixe de namespace ne correspond + } + + // Retirer le préfixe du namespace pour obtenir le chemin relatif de la classe + $relativeClass = substr($className, strlen($namespacePrefix)); + + // Convertir le chemin relatif en chemin de fichier + $file = $baseDir . str_replace('\\', DIRECTORY_SEPARATOR, $relativeClass) . '.php'; + + // Vérifier si le fichier existe et l'inclure + if (file_exists($file)) { + require_once $file; + return; // Sortir de la fonction dès que la classe est chargée + } + + // Si le fichier n'existe pas, lever une exception immédiatement + error_log("Autoloader: Impossible de charger la classe '$className' - Fichier non trouvé : $file"); + throw new Exception("Autoloader: Fichier introuvable pour la classe '$className'."); + } + + // Si aucun namespace ne correspond, lever une exception + error_log("Autoloader: Aucun mapping trouvé pour la classe '$className'."); + throw new Exception("Autoloader: Aucun mapping de namespace trouvé pour la classe '$className'."); +}); \ No newline at end of file diff --git a/public/index.php b/public/index.php index 0f38347..317d012 100644 --- a/public/index.php +++ b/public/index.php @@ -1,35 +1,3 @@ - - -
- - -Découvrez mes compétences, mes projets et mon parcours.
-