URL yeniden yazma ve Apache / PHP formları GET

2 Cevap php

Ben Apache ile benim PHP sitede yeniden URL etkin (http://example.com/index.php?param=12 olur http://example.com/index/param/12).

Ben POST yerine GET olan birkaç form var.

Formu subitting sonra, elde edilen URL yeniden değildir.

Bir GET formu gönderdikten sonra adresler yeniden tutmak Possibile mı?

GÜNCELLEME: Ben konu http://matthewjamestaylor.com/blog/how-to-post-forms-to-clean-rewritten-urls Bu makale bulunamadı ama gerçekten yeniden yazılamaz URL'ye yönlendirmek fikrini sevmiyorum. Yönlendirme olmadan adresler yeniden tutmak için bir yol gerçekten var mı?

UPDATE 2: Here is an example of what I'm trying to do. Let's say I have a simple form like this:

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

ve benim url http://example.com/index/param/12 diyelim

GET formu gönderdikten sonra, url http://example.com/index/param/12?q=my-input-text, ben gibi bir yeniden yazılamaz url almak istiyorum sırasında olur http://example.com/index/param/12/q/my-input-text

2 Cevap

Form doğrudan gitmek istiyorum gibi görünüyor /q/my-input-text bu formun onSubmit üzerinde gerçekleşmesi için JavaScript kullanmak gerekir.

apache mod_rewrite sadece gelen (istek) adresler işler - bu sizin php betikleri oluşturmak adresler hiçbir kontrole sahip. Bu, kendinize özen şeydir.