За последние 24 часа нас посетили 15266 программистов и 1671 робот. Сейчас ищут 835 программистов ...

ЧПУ URL нужна помощь знающих людей

Тема в разделе "PHP для новичков", создана пользователем smoln86, 29 фев 2012.

  1. smoln86

    smoln86 Активный пользователь

    С нами с:
    4 апр 2011
    Сообщения:
    17
    Симпатии:
    0
    Вечер добрый, а точнее ночь пытаюсь сделать ЧПУ на сайте, что то получилось,а что то пока не получается, есть ссылки вида
    имя сайта/index.php?$pid=значение
    его нужно переделать имя сайта/section/значение/ я пока допер только до имя сайта/значение
    ссылку имя сайта/index.php?action=category&category_id=значение
    переделать в имя сайта/catalog/значение/
    код в .htaccess такой
    Код (Text):
    1.  
    2. RewriteEngine on
    3. RewriteCond %{REQUEST_FILENAME} !-f
    4. RewriteCond %{REQUEST_FILENAME} !-d
    5. RewriteRule ^(.*)$ index.php [L,QSA]
    в index.php
    обрабатывается вот так
    Код (Text):
    1.  
    2. $result = $_SERVER['REQUEST_URI'];
    3.  
    4. if (preg_match ("/([^a-zA-Z0-9\.\/\-\_\#])/", $result)) {
    5. header("HTTP/1.0 404 Not Found");
    6. print "Недопустимые символы в URL";
    7. exit;
    8. }
    9.  
    10. $array_url = explode ("/",$result); //("/(\/$)/", $result,1, PREG_SPLIT_NO_EMPTY);
    11. print_r($array_url);
    12.  
    13. if (!$array_url) {
    14. $pid = 1;
    15. }else{
    16. $rubr_url = $array_url[2];
    17. $pid=getpidbyurl($rubr_url);
    18.  }
    я думаю что нужно копать в explode, но не пойму как
    буду благодарен если покажете пример.