Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Снова ModRewrite! Подскажите!
цитата
04/11/10 в 16:05
 Vyacheslav
Хочу заменить урл поиска с параметрами следующим образом:

Строка поиска: search.php?key=кейворд_поиска&par=как_вывести_результат
(par имеет 2 значения par=horizontal и par=vertical .. и является необязательным параметром)
Хотел замутить такой строкой:
site.com/search/кейворд_поиска/как_вывести_результат/

Начал так:
RewriteRule ^search/(.*)/(.*)/$ search.php?key=$1&par=$2
По сути заработало, но вот беда, хотелось бы чтоб работало если юзер не поставит в конце второй параметр "как_вывести_результат" или слеш и если поставит!! Т.е. хотел бы, чтоб работало в таких случаях:

site.com/search/кейворд_поиска/как_вывести_результат/
site.com/search/кейворд_поиска/как_вывести_результат
site.com/search/кейворд_поиска/
в последнем варианте par= будет подставлен скриптом дефолтный

Ну и вместо (.*) символы алфавита было бы лучше..
цитата
04/11/10 в 16:13
 Sterx
RewriteRule ^search/(.*)/(.*)/$ search.php?key=$1&par=$2
RewriteRule ^search/(.*)/(.*)$ search.php?key=$1&par=$2
цитата
04/11/10 в 17:54
 Vyacheslav

Блин! Так и думал!

А как ограничить символы до алфавитных?
([A-Za-z]) - Верно?
цитата
04/11/10 в 19:46
 Mika
Верно, только плюс забыл поставить между квадратной и круглой скобками, вот так надо: ([A-Za-z]+). А вообще вот полезная памятка по мод_рерайту http://blog.siteworld.be/wp-content/uploads/2006/07/mod_rewrite_cheat_sheet.png
цитата
04/11/10 в 19:58
 Vyacheslav
Супер! Спасибо всем и отдельное за памятку!


Эта страница в полной версии