Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [RewriteRule] Puste zmienne
sannin
post
Post #1





Grupa: Zarejestrowani
Postów: 308
Pomógł: 13
Dołączył: 31.10.2008

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


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?

Ten post edytował sannin 16.02.2009, 11:20:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
ddiceman
post
Post #2





Grupa: Zarejestrowani
Postów: 326
Pomógł: 121
Dołączył: 23.07.2008
Skąd: Wrocław

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


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


Ten post edytował ddiceman 16.02.2009, 14:29:18
Go to the top of the page
+Quote Post
sannin
post
Post #3





Grupa: Zarejestrowani
Postów: 308
Pomógł: 13
Dołączył: 31.10.2008

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


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
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




http://forum.modrewrite.com/viewtopic.php?p=13892#13892


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
sannin
post
Post #5





Grupa: Zarejestrowani
Postów: 308
Pomógł: 13
Dołączył: 31.10.2008

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


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

Ten post edytował sannin 16.02.2009, 20:00:27
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 13:16