Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mod_rewrite - zmienne
Forum PHP.pl > Forum > Serwery WWW
lukasamd
Witam,
mam stronę w extreme-fusion i ostatnio zdecydowałem się na rewrite, chciałem jeszcze go poprawić i mam problem. Aktualnie problemowy wpis wygląda tak:

Kod
RewriteRule ^pliki-kat-([0-9]+)-pobierz-([0-9]+)\.html$ downloads.php?cat_id=$1&download_id=$2 [L]


czyli linki są zamieniane tak:

domena/downloads.php?cat_id=X&download_id=Y

na

domena/pliki-kat-X-pobierz-Y

Jak zrobić coś takiego:

domena/pliki-Y lub domena/pliki-XY

questionmark.gif?

Zmiana kodu na np:

Kod
RewriteRule ^pliki-kat-([0-9]+)([0-9]+)\.html$ downloads.php?cat_id=$1&download_id=$2 [L]


nie skutkuje.
Jojo
Rozumiem, że X i Y, to są u Ciebie jakieś liczby. Jeśli tak, to nie możesz zapisać adresu w formie "domena/pliki-XY", ponieważ nie będziesz wiedział w którym miejscu kończy się X i zaczyna Y. Najlepiej wstaw pomiędzy nie jakiś znak, który je rozgraniczy, na przykład myślnik, przecinek albo kropkę.
lukasamd
Hm... no rzeczywiście, nawet jak ja mogę rozdzielić to strona sama już niekoniecznie się połapie o co chodzi.
A czy da się zrobić z pominięciem zmiennej cat_id= (X) ?
albo to zależy od CMSa albo jak ma to wyglądać, np tak:

Kod
RewriteRule ^pliki-([0-9]+)\.html$ downloads.php?cat_id=([0-9]+)&download_id=$1 [L]


questionmark.gif
seaquest
Taka regułka nie zadziała. Nie można umieszczać wyrażeń regularnych w drugiej części.

Podejrzewam, że Twój CMS potrzebuje tego, żeby jakoś wyświetlić kategorię z której doszedłeś do pliku.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.