Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][mod_rewrite]Przepisywanie warunkowe -problem
Forum PHP.pl > Forum > Przedszkole
odkuszacz
Mam pytanie do specjalistów w zakresie warunkowego przepisywania adresów - mod_rewrite.
Mimo wielu prób nie mogę rozwiązać dwóch problemów:

Problem I

Docelowo chciałbym uzyskać następujące formy adresów w wyniku przepisywania:

http://www.jakasnazwa.pl/index.php?nm=nazwa -> http://www.jakasnazwa.pl/nazwa/
http://www.jakasnazwa.pl/index.php?mst=miasto -> http://www.jakasnazwa.pl/miasto/
http://www.jakasnazwa.pl/index.php?nm=nazwa&mst=miasto -> http://www.jakasnazwa.pl/nazwa/miasto/
http://www.jakasnazwa.pl/index.php?nm=nazwa&mst=miasto -> http://www.jakasnazwa.pl/miasto/nazwa/

Próbowałem w sposób jak poniżej, ale działa tylko pierwsza reguła.
Reguły testowane pojedynczo bez warunków działają poprawnie.

  1. Options +FollowSymLinks
  2. RewriteEngine On
  3. RewriteBase /
  4.  
  5. RewriteCond %{QUERY_STRING} !^nm\=([^&]+)\&mst\=([^&]+)$
  6. RewriteRule ^([^/]*)/([^/]*)$ index.php?nm=$1&mst=$2
  7.  
  8. RewriteCond %{QUERY_STRING} !^mast\=([^&]+)\&nm\=([^&]+)$
  9. RewriteRule ^([^/]*)/([^/]*)$ index.php?nm=$2&mst=$1
  10.  
  11. RewriteCond %{QUERY_STRING} !^nm\=([^&]+)$
  12. RewriteRule ^([^/]*)/$ index.php?nm=$1 [PT]
  13.  
  14. RewriteCond %{QUERY_STRING} !^mst\=([^&]+)$
  15. RewriteRule ^([^/]*)/$ index.php?mst=$1 [PT]



Problem II

W wyniku uzupełnienia pól formularza: Nazwa(nm), Miasto(mst) i wysłanie go metodą GET uzyskuję adres:
http://www.jakasnazwa.pl/index.php?nm=nazwa&mst=miasto
Docelowo chciałbym, aby po wysłaniu formularza w pasku adresu przeglądarki był adres w postaci:
http://www.jakasnazwa.pl/nazwa/miasto/

Czy jest to możliwe.

Z góry dziękuję, za podpowiedzi i sugestie w tej sprawie.
ciekawskiii
Co do drugiego problemu to musisz po prostu linki wszedzie pozmieniac na te ktore chcesz uzyskac a w tych rewritach to troche chyba przekombinowales
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.