Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP]Jak spowodować, żęby formularz korzystał z mod_rewrite ?
Greg23
post
Post #1





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 6.04.2012

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


Na stronie mam formularz do wyszukiwania:
  1. <form method="get" action="http://www.domena.pl/szukaj/wynik.php">
  2. <div>
  3. <input type="text" id="textf" name="co" value="" size="18" />
  4. <input type="submit" id="submit1" name="submit" value="G" />
  5. </div>
  6. </form>



W .htaccess mam takie przekierowanie:

  1. RewriteRule szukaj/(.*)$ szukaj/wynik.php?co=$1 [L,QSA]


Czyli odwołując się do:
  1. www.domena.pl/szukaj/php

tak naprawdę odwołuje się do:
  1. www.domena.pl/szukaj/wynik.php?co=php


Natomiast nie wiem jak osiągnąć ten efekt w formularzu, bo w tym momencie po wpisaniu czegoś w formularz
ładuje mi się, jak nie trudno się domyślić wersja bez mod_rewrite czyli www.domena.pl/szukaj/wynik.php?co=php a chciałbym, żeby
ładowała się wersja: www.domena.pl/szukaj/php

Jak osiągnąć taki efekt ?

Ten post edytował Greg23 28.07.2012, 17:56:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


@konrados: Formularz wyszukiwania powinien przechowywać szukaną frazę i inne parametry wyszukiwania w URL-u - chociażby celem umożliwienia skopiowania takiego adresu.
@Greg23: Musiałbyś wysłać formularz (obojętnie jaką metodą), po stronie serwera wygenerować ostateczny URL, po czym wykonać przekierowanie na wygenerowany adres. A by całość nieco przyspieszyć (by uniknąć dodatkowego żądania HTTP) możesz przy pomocy JS wygenerować URL w momencie wysyłania formularza, przerwać wysyłanie formularza oraz wykonać przekierowanie.
Go to the top of the page
+Quote Post
Greg23
post
Post #3





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 6.04.2012

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


Cytat(Crozin @ 28.07.2012, 19:26:50 ) *
@konrados: Formularz wyszukiwania powinien przechowywać szukaną frazę i inne parametry wyszukiwania w URL-u - chociażby celem umożliwienia skopiowania takiego adresu.

Dokładnie.
Cytat
@Greg23: Musiałbyś wysłać formularz (obojętnie jaką metodą), po stronie serwera wygenerować ostateczny URL, po czym wykonać przekierowanie na wygenerowany adres. A by całość nieco przyspieszyć (by uniknąć dodatkowego żądania HTTP) możesz przy pomocy JS wygenerować URL w momencie wysyłania formularza, przerwać wysyłanie formularza oraz wykonać przekierowanie.

No właśnie tak miałem zrobione. Po wysłaniu formularza do pliku pośredniczącego, który przy okazji obliczał liczbę wyników itp następowało przekierowanie za pomocą
header("Location") na rządany url. Myślałem, że to trochę przekombinowany sposób i chciałem uprościć.

A nie da się po prostu po wypełnieniu formularza i kliknięciu przycisku szukaj załadować strony www.domena.pl/szukaj/dane_z_formularza ?
Rozumiem, że to coś w tym stylu co zasugerowałeś zrobić za pomocą JS, niestety słabo znam JS :/

Ten post edytował Greg23 28.07.2012, 18:44:46
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: 7.10.2025 - 11:31