Есть вот такой ужасный код
private function router(){
$route=$this->route;
if (empty($_GET['route']))
{
$route = 'index';
}
else
{
$route = $_GET['route'];
$rt=explode('/', $route);
$route=$rt[(count($rt)-1)]; //product/monitor перенаправляем только на monitor
if(isset($rt[(count($rt)-2)])){
$sql = "SELECT c.url as category_url, p.url as product_url, p.id
FROM product p LEFT JOIN category c ON c.id=p.cat_id
WHERE p.url like '$route'";
$result = parent::query($sql);
if($obj = parent::fetch_object($result)){
if($rt[(count($rt)-2)]==$obj->category_url){
$sql = "SELECT p.id FROM product p WHERE p.url like '%s'";
$result = parent::query($sql,$route);
if($row = parent::fetch_object($result))
{
$_REQUEST['id']=$row->id;
$route="product";
}
}
}
}
else{
$sql = "SELECT c.url as category_url, c.id FROM category c WHERE c.url like '%s'";
$result = parent::query($sql,$route);
if($obj = parent::fetch_object($result)){
$_REQUEST['category_id']=$obj->id;
$route="catalog";
}
}
}
$this->route=$route;
return $route;
}
Он работает с каталогом товаров. в урл подставляет категорию.
Задача: сделать по аналогии этого роутера выборку по категориям новостей, и и страниц.