Frage

Ich aktivierte auf meiner PHP-Website URL-Rewriting mit Apache ( http://example.com/ index.php? param = 12 wird http://example.com/index/param/ 12 ).

Ich habe ein paar Formen, die anstelle von POST in GET sind.

Nach subitting der Form wird die resultierende URL nicht neu geschrieben werden.

Ist possibile es neu geschrieben URLs zu halten, nachdem ein GET-Formular einreichen?

UPDATE: ich diesen Artikel zum Thema http://matthewjamestaylor.com/blog/how-to-post-forms-to-clean-rewritten-urls aber ich weiß nicht wirklich wie die Idee neu geschrieben URL umgeleitet wird. Gibt es wirklich keine Möglichkeit, neu geschriebenen URLs zu halten, ohne Umleitung?

UPDATE 2: Hier ist ein Beispiel dafür, was ich zu tun werde versuchen. Lassen Sie uns sagen, dass ich eine einfache Form wie dieses:

<form method="get" action="">
   <fieldset>
      <input type="text" name="q" />
      <input type="submit" value="Search" />
   </fieldset>
</form>

und lassen Sie uns sagen, meine url ist http://example.com/index/param/12

Nach dem GET-Formular, wird die URL http: // example.com/index/param/12?q=my-input-text , während ich möchte eine neu geschrieben uRL wie http://example.com/index/param/12/q/my-input-text

War es hilfreich?

Lösung

Scheint, wie wenn Sie Ihr Formular direkt gehen /q/my-input-text sollten Sie JavaScript verwenden, um die auf dem Formular des onSubmit geschehen.

Andere Tipps

Apache mod_rewrite verarbeitet nur eingehenden (Anfrage) Urls - es hat keine Kontrolle über die URLs, die Sie in Ihrem PHP-Skripte erzeugen. Dies ist etwas, das Sie sich selbst kümmern sollte.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top