Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mod_rewrite] przepisywanie metody GET, wyszukiwarka
diniox
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 6.04.2008

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


Problem wydaje się być powszechny ale o dziwno nic na ten temat znaleźć nie mogę więc może Wy pomożecie.
Mam wyszukiwarkę w PHP czyli standardowo:
  1. <form method="get" action="../szukaj.php">
  2. <div><input name="q" type="text" id="szukaj" /></div>
  3. <div><input type="submit" value="Szukaj" /></div>
  4. </form>

Tak więc po wciśnięciu przycisku Szukaj pokazuje mi się brzydki URL w stylu http://localhost/szukaj.php?q=__WPISANE_SLOWO__. A chciałbym żeby ten adres wyglądał tak: http://localhost/szukaj/__WPISANE_SLOWO__.
W internecie jest mnóstwo przykładów przepisania odwrotnego czyli mapowania "ładnego URL" na plik.php z QUERY STRING-iem. Wymyśliłem, że to powinno wyglądać jakoś tak:
Kod
RewriteRule ^szukaj.php\?q=(.*) /szukaj/ [L,R]

Ale to nie działa. Przekierowanie nie występuje. Jak usuwam \?q=(.*) to jest OK ale przecież to musi zostać bo w szukaj.php wyłapuje $_GET['q']. Proszę o pomoc.

Ten post edytował diniox 9.08.2008, 11:54:15
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Shili
post
Post #2





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


  1. <?php
  2. if($_GET['submit'] === 'submit') {
  3. $address = 'szukaj/'.$_GET['q'];
  4. header('Location:'.$address.'');
  5. }
  6. print_r($_GET);
  7.  
  8. ?>
  9.  
  10. <form action="" method="get">
  11. <input type="text" name="q" />
  12. <input type="submit" name="submit" value="submit" />
  13. </form>

Tak na szybko, bardzo na około i na pewno działające, sprawdziłam u siebie.
Z tym że do RewriteRule w stylu ^szukaj/(.*?)$ szukaj.php?q=$1&sumbit=$2 [L]

Problem z innymi wyrażeniami (pomijając znak zapytania) jest taki, że tutaj plik szukaj.php masz, a patrząc w drugą stronę: w katalogu szukaj nie masz folderu o nazwie takiej jak ciąg wyszukiwania.

Ten post edytował Shili 9.08.2008, 12:40:55
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 2.10.2025 - 22:11