Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [RewriteRule] Puste zmienne
Forum PHP.pl > Forum > Przedszkole
sannin
Witam,

piszę wyszukiwarkę i chciałbym dodać do niej mod rewrite. Moje linik teraz to
Cytat
index.php?go=szukaj&city=miasto&type=typ&date1=dataod&date2=datado

Teraz chciałbym uzyskać taki efekt, że jeśli wejdę na link
Cytat
szukaj,city,wroclaw.html

wywoła się
Cytat
index.php?go=szukaj&city=wroclaw&type=&date1=&date2=

Natomiast jeśli wejdę na
Cytat
szukaj,date1,1345678,date2,145677.html

to wywoła się
Cytat
index.php?go=szukaj&city=&type=&date1=1345678&date2=145677

i jeśli wejdę na
Cytat
szukaj,city,wroclaw,type,1,date1,1345678,date2,145677.html

to wywoła się
Cytat
index.php?go=szukaj&city=wroclaw&type=1&date1=1345678&date2=145677

i tak dalej wszystkie możliwe przypadki. Czy da się to zapisać w jednej regule?
ddiceman
Dopasowanie:
Kod
szukaj(,city,([a-z]+))?(,type=([0-9]+))?(,date1,([0-9]+))?(,date2,([0-9]+))?\.html

Wynik:
Kod
/index.php?go=szukaj&city=$2&type=$4&date1=$6&date2=$8
sannin
dzięki bardzo smile.gif śmiga pięknie smile.gif

Rozbudowałem to zapytanie i mam problem jak ustawić zmienną nr 10? Mam tak:
Kod
&date2=$10
serwer traktuje mi to jako zmienną nr 1 i jeszcze dopisuje 0
sannin
Zrobiłem coś takiego, ale nie bardzo to działa

Kod
RewriteCond %{REQUEST_URI} ,([^-]+),([^-]+)\.html$ [NC]
RewriteRule szukaj(,wojewodztwo,([0-9]+),([a-z\,]+))?(,kategoria,([0-9]+),([a-z\,]+))?(,typ,([0-9]+),([a-z\,]+))?(,data,od,([0-9]+))?(,data,do,([0-9]+))?\.html index.php?controller=Search&state=$2&category=$5&type=$8&date1=%1&date2=%2

data1 przyjmuje wartość data2.

Zrobiłem tak....

Kod
RewriteRule szukaj,wojewodztwo,([0-9]+),[a-z\,]+?,kategoria,([0-9]+),[a-z\,]+?,typ,([0-9]+),[a-z\,]+?,data,od,([0-9]+)?,data,do,([0-9]+)?\.html index.php?controller=Search&state=$1&category=$2&type=$3&datefrom=$4&dateto=$5
Teraz działa tylko jak zrobię taki link
Kod
szukaj,datefrom,1345678,dateto,145677.html
to już nie działa... musi być pełny link aby zadziałało.

Edit

Już sobię poradziłem, dzięki wszystkim smile.gif
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.