Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> .htaccess, zmienna liczba zmiennych w adresie, Pytanie dla doświadczony praktyków, obytych z mode_rewrite
Pilsener
post
Post #1





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

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


Witajcie, piszę skrypt artykułów i wpadłem na poroniony pomysł zastosowania w nim (opcjonalnie, do wyboru przez użytkownika) przyjaznych adresów.

Uruchomiłem moda, odpaliłem przepisywanie linków i wszystko cacy, ale jest kilka problemów:

Strona główna+ porcjowanie
mojastrona.pl/artykuly/index.php mojastrona.pl/artykuly/index.html
mojastrona.pl/artykuly/index.php?a=2 mojastrona.pl/artykuly/index,2.html

Napisałem prostę regułę, która mi to zmienia:
RewriteRule ^index.htm$ index.php [L]
ale chciałbym aby user miał możliwość zmiany nazwy pliku z artykułami, np. na taki:
mojastrona.pl/artykuly/jego_arty.php

Da się jakoś dobrać regułę, czy trzeba zczytywać nazwę pliku i generować .htaccess dynamicznie przy każdym ładowaniu strony?

Filtrowanie i sortowanie
mojastrona.pl/artykuly/index.php?kat=kategoria&sort=rozmiar&a=2 mojastrona.pl/artykuly/kategoria,rozmiar,3.html
napisałem znów regułę i działa, ale znów sukces połowiczny, bo:
- co gdy user wybierze tylko kategorię, albo tylko sortowanie? Typu:
mojastrona.pl/artykuly/index.php?kat=kategoria - pokaż tylko art. z kategorii "kategoria"
mojastrona.pl/artykuly/index.php?sort=rozmiar - sortuj wg rozmiaru
Albo nie ma numeru strony? Dodatkowo będzie jeszcze rosnąco/malejąco. Jak wpisze regułę:
- sortowanie/filtr/numer strony to gdy jest tylko sortowanie/numer_strony to nie działa (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)

Jak rozwiązać ten problem?

Wyświetlanie artykułów:
Zależy mi bardzo na tym, aby adres do artykułu wyglądał tak:
mojastrona.pl/artykuly/tytul-artu.html (tytuł ma być unikalny)

I znów prosta reguła działa, ale gdy mam:
mojastrona.pl/artykuly/tytul-artu,2.html - strona druga artykułu
mojastrona.pl/artykuly/tytul-artu,kom,2.html - ale tu już strona druga, ale do komentarzy do tego artykułu

Jak to jakąś wspólną koncepcją ogarnąć? (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif) Dwa dni już nad tym myślę, bez pomocy nie dam chyba rady. Bez numerów stron jeszcze jakoś mi to wychodziło, ale jak pomyślę jeszcze o doklejaniu numerów stron to (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)

Podsumowując:
zmienna1/zmienna2/zmienna3 - nie dość że np. zmienna 2 nie musi wcale w adresie występować, to jak sprawić, aby przepisywać ją na właściwą nazwę? Przecież jak zrobię:
plik-artykuly,filtr-kategoria1,kolejnosc-rosnaco,strona-2.html - to ładny adres przestaje być ładny i niewiele się różni od:
artykuly.php?filtr=kategoria1&kolejnosc=rosnaco&strona=2 (IMG:http://forum.php.pl/style_emoticons/default/sad.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%)
-----


Ok, wpadłem jeszcze na taki pomysł (patrząc na linki na money.pl i nie tylko), czy nie można by połączyć wyrażeń regularnych z różnymi separatorami, aby w mode_rewrite zrobić przepisanie w tym stylu:

mojastrona.pl/artykuly/tytul-artykulu-dowolnego;arty_2.html na:
mojastrona.pl/artykuly/index.php?art=tytul-artykulu-dowolnego&a=2
(artykuł strona druga)

Lub
mojastrona.pl/artykuly/opis,smiecie-rupiecie,malejąco;filtr_3.html na:
mojastrona.pl/artykuly/index.php?sort=opis&kat=smiecie-rupieci&poz=malejaco&a=3
(strona 3-cia, sortowanie kategorii "smiecie" wg opisów, malejąco)

Chodzi mi o to, aby:
- wszystko co jest pomiędzy / a ; było traktowane jako wartości zmiennych oddzielone przecinkami
- pomiędzy ; a _ to klucz, dzięki któremu przypiszemy właściwe wartości właściwym nazwom zmiennych (np. dla "filtr" będą przepisywane 3 zmienne: sort, kat i poz, dla art tylko tytuł artykułu)
- a wszystko po _ to numer strony, jedna wartość, jedna nazwa

W dobrą stronę kombinuje? Da się to w ogóle tak zrobić, czy sobie odpuścić mode_rewrite'a?

Ciężko mi z tego zrezygnować, bo napisałem już kupę kodu, co mi te ładne linki + słowa kluczowe generuje (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
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: 3.10.2025 - 01:52