php form resend bilgileri ekranını göndermek ve

2 Cevap php

I want to ask a best practice question. Suppose I have a form in php with 3 fields say name, email and comment. I submit the form via POST. In PHP I try and insert the date into the database. Suppose the insertion fails. I should now show the user an error and display the form filled in with the data he previously inserted so he can correct his error. Showing the form in it's initial state won't do. So I display the form and the 3 fields are now filled in from PHP with echo or such. Now if I click refresh I get a message saying "Are you sure you want to resend information?". OK. Suppose after I insert the data I don't carry on but I redirect to the same page but with the necessary parameters in the query string. This makes the message go away but I have to carry 3 parameters in the query string.

Yani benim soru:

Nasıl bunu yapmak için daha iyi? Ben sorgu dizesi parametre sürü etrafında taşımak değil, aynı zamanda bu hatayı almak istemiyorsanız. Bu nasıl yapılabilir? Ben form bilgilerini depolamak için çerezleri kullanmalısınız.

2 Cevap

İlk senaryo en geçerli gibi görünüyor.

yani

Kullanıcı formu gönderdiğinde

Bazı sorun sunulması engeller, böylece formu yeniden görüntülenir

(Ilerleme onların en olası yolu nazikçe onlar için yeniden doldururken yeniden göndermek formu olmasına rağmen) kullanıcı "yeniler" onlar yeniden gönderme bilgileri hakkında her zamanki mesaj görürseniz.

"Eğer bilgiyi yeniden istediğinizden emin misiniz?" mesajı form sunulmasından sonra sayfayı yenileyerek birinin durumunda mükemmel geçerlidir, yani özellikle bu davranışı kırmak için kod yazmak gerekmez.

Ben genelde insanlar geçici bir oturum değişkeni gönderilen verileri depolamak ve geri istemciye veri göndermek düşünüyorum.

Belki de konumuzun dışında ama "yanlış tarih" sözü, ve birçok kullanıcı unintentionally size yanlış tarihlerin gönderemezsiniz böylece şeyleri düzenlemek gerektiğini söyleyebilirim düşünüyorum.