Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Router php

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Не могу понять ошибку!
bandit116
Отправлено: 17 Сентября, 2015 - 15:28:10
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Сент. 2015  


Помог: 0 раз(а)




Всем привет! Есть класс route он преобразуем строку запроса REQUEST_URI в массив потом проверяем есть ли первый элемент если есть то приравниваем к массиву с индексом 1 т.к нулевой элемент массива "/" , по логике это контроллер и после него экшен. потом проверяю есть ли такой файл и если да то подключаем если нет то 404 страница! Вопрос в следующем перехожу по ссылке mysite.ru/controller все работает но если перейти так mysite.ru/controller/что то еще, то слетает дизайн сайта, хотя я написал класс tpl в котором прописаны пути к директориям! не понимаю как так происходит! Помогите советом пожалуйста)

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. class Route {
  4.  
  5.     function __construct() {
  6.        
  7.     }
  8.    
  9.     public static function Start() {
  10.             //назначение параметров по умолчанию
  11.             $route_name = 'index';
  12.            
  13.          
  14.             //преобразуем строку запроса в массив
  15.             $route_array = explode('/', $_SERVER['REQUEST_URI']);
  16.            
  17.            
  18.             if(!empty($route_array[1])) {
  19.                $route_name = $route_array[1];
  20.             }
  21.  
  22.             /*if(!empty($route_array[2])) {
  23.                $route_name = $route_array[2];
  24.            
  25.             }*/
  26.          
  27.            
  28.            
  29.            
  30.             if(file_exists(ROOT.'/engine/routers/'.$route_name.'.php')) {
  31.                 include ROOT.'/engine/routers/'.$route_name.'.php';
  32.             }
  33.              else {
  34.               // header('Location: /404');
  35.                 tpl::compile('NotFound');
  36.                 tpl::set('{title}',"Страница не найдена!");
  37.                 tpl::set_block();
  38.                 exit;
  39.             }
  40.  
  41.             //$class = new $class_name();
  42.            //$class->$action_name();
  43.            echo print_r($route_name);
  44.            
  45.     }
  46.  
  47. }
  48.  
  49.  
  50.  
 
 Top
andrewkard
Отправлено: 17 Сентября, 2015 - 15:36:13
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




bandit116 пишет:
то слетает дизайн сайта

не правильный путь к стилям.
 
 Top
bandit116
Отправлено: 17 Сентября, 2015 - 15:52:44
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Сент. 2015  


Помог: 0 раз(а)




andrewkard пишет:
bandit116 пишет:
то слетает дизайн сайта

не правильный путь к стилям.


Точно! Ткнул носом меня. Спасибо! Оказывается
PHP:
скопировать код в буфер обмена
  1. <link rel="stylesheet" type="text/css" href="css/main.css"> и <link rel="stylesheet" type="text/css" href="/css/main.css">
две разные вещи))) про слеш забыл! Спасибо Друг!
 
 Top
broshurkaplus
Отправлено: 17 Сентября, 2015 - 22:49:30
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




конечно - относительный и путь от корня.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB