Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> .htaccess i dodatkowa zmienna w adresie
Mayka
post
Post #1





Grupa: Zarejestrowani
Postów: 304
Pomógł: 1
Dołączył: 12.01.2009
Skąd: Kanapa

Ostrzeżenie: (0%)
-----


No i kolejny z serii dziwnych problemów. W związku z tym że chciałbym wprowadzić "przyjazne" linki postanowiłem, poszukać, poczytać i wymyślilem coś takiego:
  1. Options FollowSymLinks
  2. RewriteEngine On
  3. RewriteBase /
  4. RewriteRule ^/?([a-z0-9]*)/$ index.php?strona=$1 [NC,L]


tylko teraz powiedzcie mi co zrobić jak bede potrzebował 3 zmienne do index.php ? 3 rózne reguły napisać trzeba ? czy wtedy odwołać index.php?strona=cos&inna=cosinnego&jeszczeinna=cos ? i co z przesyłaniem czegoś _getem ? Bo nie bardzo to rozumiem.. jak by mogł ktoś to "rozrysować" normalnie to byłbym wdzieczny..(IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pilsener
post
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Brniesz w rozwiązania przestarzałe, skomplikowane i mało wydajne.

Dzisiaj używa się tylko jednej reguły, która przepisuje dowolny adres a następnie jest on obrabiany po stronie php za co odpowiada tak zwany router.

Przykład:

1. Mamy adres:
strona.pl/galeria/fotki;z;wakacji-2,456.html

2. Zostaje on przepisany na:
strona.pl?adres=galeria/fotki;z;wakacji-2,456.html

3. Teraz do akcji wkracza nasz router który obrabia zmienną $_GET['adres'] i otrzymujemy tablicę parametrów:
moduł = galeria
tytuł = fotki z wakacji
id = 456
page = 2

4. Tworzenie adresów odbywa się podobnie:
  1. echo $this->url($parametry,$opcje);


Zalety:
- nie musisz się babrać w .htaccess
- tworzenie reguł w PHP jest prostsze, elastyczniejsze i szybsze
- w każdej chwili można zmienić koncepcję adresów dokonując zmian jedynie w pliku cfg routera (przekazywane i odbierane parametry zostają bez zmian)

Najlepiej utworzyć sobie jakiś router standardowy działający na zasadzie: domena/moduł/słowa;kluczowe-nr_strony,parametr1,parametr2.html
A potem rozbudować system o definiowanie własnych routerów. Można też skorzystać z gotowych rozwiązań, których nie brak.

Najprostsze systemy po prostu zastępują znaki & i = tworząc coś w stylu:
strona.pl/klucz1-wartosc1;klucz2-wartosc2;klucz3-wartosc3

Widziałem już serwisy gdzie było kilkaset wpisów w .htaccess i weź teraz coś tam zmień, popraw, debuguj...
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 03:50