webmaster webmastering webdesign

Jesteś tutaj: webmade.org >> porady >> php + mysql

Ładne adresy - przepisywanie URL

autor: Wojciech Matyśkiewicz, ostatnia modyfikacja: 2007-02-23

szukaj: przyjazne adresy url przyjazne adresy url ładne adresy url ładne adresy url PHP PHP

Coraz częściej pojawiają się pytania, co zrobić aby adres moich podstron był ładniejszy. No i nie dziwie się dlaczego tak często zadajemy te pytanie. Operacje na GET znacznie wydłużają nasz adres, co nie służy ani odsyłaniu (kiedy informujemy znajomych o danym materiale), ani indexowaniu w wyszukiwarkach. Oczywiście powstało wiele porad w jaki sposób to można zrobić. Przykładem może być artykuł na php.pl, czy na webinside.pl , lecz obydwa opisy skupiają się bardziej na konfiguracji serwera (co oczywiście jest łatwiejsze), lecz w praktyce nie zawsze mamy aktywowaną funkcje mod_rewrite .

Oczywiście istnieje możliwość rozwiązania tego problemu dzięki odpowiedniemu kodowi PHP. A więc:

Adres: artykul.php?dzial=felietony&nr=123&strona=5

Po przepisaniu: artykul,felietony,123,5

Tworzymy funkcje bazową:

<?php
function niceUrl()
    {
    $request = explode('?',$_SERVER['REQUEST_URI']);
    $vars = explode(',',$request[1]);
    return $vars;
    }
        $tablica = niceUrl();

       /*
       po uruchomieniu adresu: artykul.php?felietony,123,5
       do tablicy zostaną załadowane odpowiednie dane
       */
      $dzial = $tablica[0];
      $nr = $tablica[1];
      $strona = $tablica[2];
?>

Mała konfiguracja serwera (plik .htaccess), która zamiast .php wstawi , (przecinek).

<Files artykul>
ForceType application/x-httpd-php
</Files>

I kończymy dodając 2 funkcję:

<?php
function niceUrls2($baseFile = 'artykul')
    {      
        if(strstr($_SERVER['REQUEST_URI'],$baseFile))
        {
            $params = explode($baseFile.',',$_SERVER['REQUEST_URI']);
        }        
        $params = explode(',',$params[1]);         
         return $params;
    }
?>

Wojciech Matyśkiewicz

Osoby czytające tę publikację przeglądały również:

Chcesz zostać programistą?

Poznaj 6 kroków do efektywnej
nauki programowania!

 

valid XHTML
valid CSS
© 2004-2008 copyright by webmade.org