jeszcze mam jedno pytanie.
Mam problem z wyrażeniem regularnym w .htaccess
Chciałbym, aby pasek adresu po przekierowaniu wyglądał w taki sposób:
http://przyklad.pl/Categories/NazwaKategorii/3/Page/1/Sort/Price/0/
Wszystko ładnie się generuje przez skrypt. Zauważyłem, że po kolejnym sortowaniu adres nie pozostał taki jak trzeba. Dokładniej całość wyglądała tak:
http://przyklad.pl/Categories/NazwaKategorii/3/Page/1/Sort/Price/0/3/Page/1/Sort/Price/0/
Czyli powielane zostały '3/Page/1/Sort/Price/0/'.
Z ciekawości wypisałem sobie zmienne z geta poprzez:
echo $_GET['type'].$_GET['title'].$_GET['id'].$_GET['index'].$_GET['column'].$_GET['order'];
Z tego co pisałem powinienem dostać następujący wynik na ekranie: CategoriesNazwaKategorii3Price0
Otrzymuje:CategoriesNazwaKategorii/3/Page/1/Sort/Price01
Linia w htaccess:
RewriteRule ^Categories/([^-]+)/([^-]+)/Page/([^-]+)/Sort/([^-]+)/([^-]+)/$ Categories.php?type=Categories&title=$1&id=$2&index=$3&column=$4&order=$5 [L]
Wie ktoś może co robię źle?
// Edit:
echo 'Type: '.$type.'<br />Title: '.$title.'<br />ID: '.$id.'<br />Index: '.$index.'<br />Column: '.$column.'<br />Order: '.$order;
Zwraca:
Type: Categories
Title: NazwaKategorii/3/Page/1/Sort/Price
ID: 0
Index: 1
Column:
Order:
// Edit 2:
Heh... miałem problem w .htaccess związany z kolejnością linii... co za niefart :P
Konkretnie miałem następująco (zamiast odwrotnie):
RewriteRule Categories/([-]+)/([^-]+)/$ Categories.php?type=Categories&title=$1&id=$2&index=1 [L]
RewriteRule Categories/([-]+)/([-]+)/Page/([-]+)/Sort/([-]+)/([-]+)/$ Categories.php?type=Categories&title=$1&id=$2&index=$3&column=$4&order=$5 [L]