From ed1f744e1cf0045540c2e6349cc7dcc5031c8652 Mon Sep 17 00:00:00 2001 From: filippo.bertilotti <filippobertilotti@gmail.com> Date: Tue, 14 May 2024 11:38:23 +0200 Subject: [PATCH] (parte 86) --- index.php | 31 +++++++++++++++++-------------- 1 files changed, 17 insertions(+), 14 deletions(-) diff --git a/index.php b/index.php index 1da17f5..f38c0a8 100644 --- a/index.php +++ b/index.php @@ -1,21 +1,24 @@ <?php -$action = $_GET["action"]; -$controller = $_GET["controller"]; +spl_autoload_register(function ($class) { + require "src/". str_replace("\\", "/", $class). ".php"; + }); -if($controller === "products") { - require "src/controllers/products.php"; - $controller_object = new Products; -}elseif($controller === "home") { - require "src/controllers/home.php"; - $controller_object = new Home; +$path = parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH); +$segments = explode("/", $path); -} +$router = new Framework\Router; +$router->add("/admin/{controller}/{action}", ["namespace" => "Admin"]); +$router->add("/product/{slug:[\w-]+}", ["controller" => "products", "action" => "show"]); +$router->add("/{title}/{id:\d+}/{page:\d+}", ["controller" => "products", "action" => "showPage"]); +$router->add("/{controller}/{id:\d+}/{action}"); +$router->add("/home/index", ["controller" => "home", "action" => "index"]); +$router->add("/products", ["controller" => "products", "action" => "index"]); +$router->add("/", ["controller" => "home", "action" => "index"]); +$router->add("/{controller}/{action}"); -if($action === "index") { - $controller_object->index(); -}elseif($action === "show") { - $controller_object->show(); -} +$dispatcher = new Framework\Dispatcher($router); + +$dispatcher->handle($path); \ No newline at end of file -- Gitblit v1.8.0