From 5cc38b583e04398004e33bd09447c91cb3c618cb Mon Sep 17 00:00:00 2001
From: filippo.bertilotti <filippobertilotti@gmail.com>
Date: Wed, 08 May 2024 09:46:25 +0200
Subject: [PATCH] aggiornamento codice: implementazione comando "use" e refactor

---
 index.php |   48 ++++++++++++++++++++++++------------------------
 1 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/index.php b/index.php
index 0f8a6c1..6a9577d 100644
--- a/index.php
+++ b/index.php
@@ -1,28 +1,28 @@
 <?php
-    $dns = "mysql:host=localhost;dbname=product_db;charset=utf8;port=3306";
-    $pdo = new PDO($dns, "product_db_user", "secret", [
-        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
-    ]);
 
-    $stmt = $pdo->query("SELECT * FROM product");
+spl_autoload_register(function ($class) {
+    require "src/". str_replace("\\", "/", $class). ".php";
+ });
 
-    $products = $stmt->fetchAll(PDO::FETCH_ASSOC);
-    
-    print_r($products);
-?>
+$path = parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH);
+$segments = explode("/", $path);
 
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <title>Products</title>
-</head>
-<body>
-    <h1>Products</h1>
-    <?php foreach ($products as $product): ?>
-        <h2><?= htmlspecialchars($product["name"]) ?></h2>
-        <p><?= htmlspecialchars($product["description"]) ?></p>
-    <?php endforeach; ?>
-</body>
-</html>
\ No newline at end of file
+$router = new Framework\Router;
+$router->add("/home/index", ["controller" => "home", "action" => "index"]);
+$router->add("/products", ["controller" => "products", "action" => "index"]);
+$router->add("/", ["controller" => "home", "action" => "index"]);
+
+
+$params = $router->match($path);
+
+if($params === false) {
+    exit("No routes matched");
+}
+
+$controller = "App\Controllers\\" . ucwords($params["controller"]);
+$action = $params["action"];
+
+$controller_object = new $controller;
+
+$controller_object->$action();
+    
\ No newline at end of file

--
Gitblit v1.8.0