Почему мой маршрутизатор не читает CSS?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Почему мой маршрутизатор не читает CSS?

Сообщение Anonymous »

Я создал роутер с нуля. Это простой маршрутизатор:

Код: Выделить всё

class Router {
private static array $routes;

public static function register($route = '/', $filename=''){
self::$routes[$route] = $filename;
}

public static function run(string $URI){
$route = explode('?', $URI)[0];
$play = self::$routes[$route];

if($play){
try{
var_dump($play);
require_once $play;
} catch(Error $e){
echo "Can't find the file  
" . $e -> getMessage() . "
";
}

}else{
echo "Page not found 404";
}
}
}
А главная страница index.php использует верхний и нижний колонтитулы в качестве внешних файлов. В середине мы можем вызвать маршрутизатор, и он просто сработает. Логика понятна:

Код: Выделить всё

require_once dirname(__DIR__) . '/config/Router.php';
/**
* Registration of routers =======================+
*/
Router::register('/', './index.php');
Router::register('/associations', dirname(__DIR__) . '/views/associations/index.php');
Router::register('/associations/add', dirname(__DIR__) . '/views/associations/add.php');
Router::register('/partnerships', dirname(__DIR__) . '/views/partnerships/index.php');
Router::register('/test/t', dirname(__DIR__) . '/views/associations/test.php');
/**
* Definitions of variables ======================+
*/
$title = 'List of associations';
$page_title = 'Organize your partnerships in ***';
/**
* Requiring the header for every page ===========+
*/
require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '/views/layouts/header.php';
/**
*
*/
var_dump($_SERVER['REQUEST_URI']);
Router::run($_SERVER['REQUEST_URI']);

/**
* Requiring the header for every page ===========+
*/
require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'views/layouts/footer.php';
Для страниц, на которых есть только одна косая черта, это работает идеально. Но на таких страницах, как /associations/add, страница загружается правильно, но не может прочитать CSS.
ПРИМЕЧАНИЕ. Я не использую композитор, и я не сделал автозагрузчик!
Я пытался изменить путь к файлам CSS, но это повлияет на другие файлы, потому что все они имеют одинаковый заголовок. И это не проблема. Я уверен, что проблема в маршрутизации. Но как я могу это исправить? Любая помощь будет оценена по достоинству!

Подробнее здесь: https://stackoverflow.com/questions/787 ... ad-the-css
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»