| | |
| | | <?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 |
| | | ]); |
| | | spl_autoload_register(function ($class) { |
| | | require "src/$class.php"; |
| | | }); |
| | | |
| | | $stmt = $pdo->query("SELECT * FROM product"); |
| | | $path = parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH); |
| | | $segments = explode("/", $path); |
| | | |
| | | $products = $stmt->fetchAll(PDO::FETCH_ASSOC); |
| | | |
| | | print_r($products); |
| | | ?> |
| | | $router = new 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 = $params["controller"]; |
| | | $action = $params["action"]; |
| | | |
| | | require "src/controllers/$controller.php"; |
| | | |
| | | $controller_object = new $controller; |
| | | |
| | | $controller_object->$action(); |
| | | |