Muhtemelen bir <form>
içeren bir HTML sayfası oluşturduk. Formu (ki, sitenizi barındıran web sunucusu) HTTP sunucuya veri göndermek için kullanılır.
HTTP protokolü sunucuya veri göndermek ve sunucudan veri almak için kullanılan farklı istek türlerini tanımlar. En çok kullanılan GET
ve POST
vardır. (Eğer korsan tarafında ise, ya neyse) ne yazık ki çok yaygın olan çok kötü bir PHP programcısı, daha fazla bir şey olmak istiyorsanız bu konuda öğrenmek gerekir.
Senin sorunun Firefox bir POST isteği gönderdikten sonra bahsediyoruz sayfada geldi olmasıdır. Eğer reload sayfa varsa, bir POST şeklinde tekrar aynı veri göndermek zorundadır. O onun yapmak istediği konusunda emin dolayı bir POST isteği (genellikle bir veritabanı verileri değiştirmek için) için kullanılması gereken ne sözleşmelere, tarayıcı kullanıcı sorar.
Bunu aşmak için iki seçenek esas vardır:
- GET form yöntemini değiştirme; veya
- POST sonra bir yönlendirme kullanın.
Ilk yöntemi kullanmak için, sadece form etiketi için bir method="get"
parametresini ekleyebilirsiniz:
<form action="senddata.php" method="get"> ... </form>
Ikinci yöntemi kullanmak için, sadece bir şey gibi kullanarak POST isteği sonra kullanıcıyı yönlendirme
header("Location: blahblahblah")
En çok kullanılan model POST-yönlendir, yani, sana bahsettiğim ikinci yöntemdir. (Eğer bu konuda ilgilenen varsa, and you should be, as every PHP programmer should, XSRF strong> hakkında okuyun) many security implications bir veritabanında verileri değiştirmek için GET kullanarak vardır.