[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Router
Страницы: 1, 2, 3
VeRTak
Подправил регулярку, теперь все нормально?


if(preg_match('[a-z 0-9_\/]', $route))
show404();
OleKh
Цитата (Wind @ 7.10.2015 - 15:30)
т.е сначала сначала надо прогнать через filter_input?

понятия не имею, сначала или потом прогонять ) просили "по пинать" - получите)

inpost прав, гугл в помощь
VeRTak
OleKh

Да я без претензий же smile.gif И на том спасибо, особенно за логику с ключами, а то получилось бы, понял что логика не та, а уже пол проекта сделано и бегай потом по файлам исправляй ph34r.gif
OleKh
Цитата (Wind @ 7.10.2015 - 16:34)
И на том спасибо, особенно за логику с ключами, а то получилось бы, понял что логика не та, а уже пол проекта сделано и бегай потом по файлам исправляй

http://habrahabr.ru/post/150267/

Трудно понять цель использования MVC на процедурном стиле. Я изучал MVC на этом примере, далее сделал свой сайт по такой архитектуре. Принцип MVC тогда понял хорошо. Рекомендую для изучения.

Не понимаю про какую логику с ключами имеется в виду, я посоветовал добавить action, а с параметрами у вас реализовано через какие-то сегменты, ну пусть будут сегменты, какая разница как назвать. Я ошибся когда читал код и пропустил тот момент, что в сегменте остался массив, поэтому немного запутал, но ничего, лучше запомнится что возвращает array_shift().

По поводу проверки входных данных не простой вопрос, как правильно встроить, поэтому - ничего не могу посоветовать, тем более в такую архитектуру.
VeRTak
Цитата (Wind @ 7.10.2015 - 18:34)
Не понимаю про какую логику с ключами имеется в виду, я посоветовал добавить action,


Я просто сначала не обратил внимание на название ключей, а у меня получается инкдюдятся по ключу controller и сами контроллеры и виды, можно и запутаться. сделал file - более логично
OleKh
Цитата (Wind @ 7.10.2015 - 16:51)
сделал file - более логично

К этой вашей инициативе, я не имею никакого отношения, ничего такого не имел в виду, наоборот по моему Controller будет понятней.



VeRTak
Цитата (OleKh @ 7.10.2015 - 18:56)
наоборот по моему Controller будет понятней.


Ну я так не думаю


include LIF_PATH . '/application/views/'.$result['directory'].'/'.$result['controller'].'.php';


Подключаем вьюшки, а тут массив с ключом контроллер, подключаем вьюшку что еще тут за контроллер мантроллер :huh:
OleKh
Цитата (Wind @ 7.10.2015 - 17:02)
Подключаем вьюшки, а тут массив с ключом контроллер, подключаем вьюшку что еще тут за контроллер мантроллер :huh:


Попробуйте тот пример, очень рекомендую.

В вашем случае, я бы сделал так, именовал бы вьюшки) как view_all.php, контроллер controller_all.php, но не претендую на последнюю инстанцию.

include LIF_PATH . '/application/views/'.$result['directory'].'/view_'.$result['controller'].'.php';


вообще, бред - директория? controller должен быть News, action List (для all), для отдельной записи, controller должен быть News, action Item (id/1)


ссылка №1 - /news/list

Array
(
[controller] => news
[action] => list
[params] => Array
(
[0] =>
)

)



ссылка №2 - /news/item/1/12


Array
(
[controller] => news
[action] => item
[params] => Array
(
[id] =>array(1, 12)
)

)


и тогда

include LIF_PATH . '/application/views/'.$result['controller'].'/view_'.$result['controller'].'.php';


и переменную $result лучше переименовать в $request чтобы потом было понятно откуда это всё взялось.
inpost
OleKh
Если у тебя папка называется VIEW, то зачем именовать как view_name ? Типо для полных дебилов, кто с первого раза не понял?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
inpost
OleKh
Я не гуглить предлагаю, а почитать здоровенные доки от поисковика, где пишут о том, как должен выглядеть сайт.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
VeRTak
Цитата (Wind @ 7.10.2015 - 19:02)
и переменную $result лучше переименовать в $request


название переменной result пока не имеет ни какой роли у меня, так как над роутером еще не закончил, а счет

Цитата (OleKh @ 7.10.2015 - 19:12)
include LIF_PATH . '/application/views/'.$result['controller'].'/view_'.$result['controller'].'.php';


тут по моему еще легче запутаться biggrin.gif
VeRTak
inpost

Стас, если тебе не трудно, посмотри регулярку, все ли так теперь?
OleKh
Цитата (inpost @ 7.10.2015 - 18:30)
Если у тебя папка называется VIEW, то зачем именовать как view_name ? Типо для полных дебилов, кто с первого раза не понял?

Хорошо, Wind по ходу возмутился, что не будет понятно что там за контроллер - мантролер) я предложил такой вариант, это ведь просто учебный скрипт и надо делать поправки и на дебилов в том числе)
inpost
Wind
Давай так. Ты читал рекомендации и подправил регулярку, как я говорил. Верно? Зацитируй конкретный пункт из рекомендаций, который повлиял на регулярку и что ты изменил в ней. wink.gif

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
VeRTak
Цитата (OleKh @ 7.10.2015 - 20:38)
Хорошо, Wind по ходу возмутился, что не будет понятно что там за контроллер - мантролер) я предложил такой вариант, это ведь просто учебный скрипт и надо делать поправки и на дебилов в том числе)


Да никто же ничего не говорит, просто нужно делать сразу как надо smile.gif А вдруг приложение разрастется, ведь серьезно можно запутаться smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.