padonnak
@padonnak

MVC Маршрутизация и GET параметры?

Всем привет,
Встал вопрос как реализовать прием $_GET['xxx'] url в таком маршрутизаторе, если вбивать xx.xx/link он работает как надо если вбить любой запрос /link?xxx=123 то сразу будет редирект на 404 стр, вся суть в $routes = explode('/', $_SERVER['REQUEST_URI']); этой строке, как реализовать?

static function start()
	{
		 
		$controller_name = 'Main';
		$action_name = 'index';
		
		$routes = explode('/', $_SERVER['REQUEST_URI']);

	 
		if ( !empty($routes[1]) )
		{	
			$controller_name = $routes[1];
		}
		
	 
		if ( !empty($routes[2]) )
		{
			$action_name = $routes[2];
		}
 
		$model_name = 'Model_'.$controller_name;
		$controller_name = 'Controller_'.$controller_name;
		$action_name = 'action_'.$action_name;
 
	 

		$model_file = strtolower($model_name).'.php';
		$model_path = "application/models/".$model_file;
		if(file_exists($model_path))
		{
			include "application/models/".$model_file;
		}

 
		$controller_file = strtolower($controller_name).'.php';
		$controller_path = "application/controllers/".$controller_file;
		if(file_exists($controller_path))
		{
			include "application/controllers/".$controller_file;
		}
          
		else
		{
			 
			Route::ErrorPage404();
		}
		
		 
		$controller = new $controller_name;
		$action = $action_name;
		
		if(method_exists($controller, $action))
		{
			 
			$controller->$action();
		}
		else
		{
		 
			Route::ErrorPage404();
		}
	
	}
  • Вопрос задан
  • 1072 просмотра
Решения вопроса 1
padonnak
@padonnak Автор вопроса
Всем спасибо вопрос решил сам:
Оказалось все очень просто теперь все get запросы он кушает идеально
$URIParts = explode('?',$_SERVER['REQUEST_URI']);
  $routes = explode('/',$URIParts[0]);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
trevoga_su
@trevoga_su
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы