Ben benim formları tasarım Şu anda, ben formun id eşit teslim düğmesinin adını tutmak istiyorum. Sonra, benim php, ben sadece bir form teslim edildiği ve hangi formu teslim olup olmadığını kontrol etmek için if(isset($_POST['submitName'])) yapmak.
Öncelikle, bu yöntem ile herhangi bir güvenlik sorunları veya tasarım kusurları vardır?
Ben kullanıcıya hızlı doğrulama sağlamak amacıyla javascript ile benim formları bindirmek isterken karşılaştığım bir sorun var. Açıkçası sunucu tarafı doğrulama korumak gerekir iken bir hata mesajı bir giriş bulanıklık üzerine, satır görüntülenir Örneğin, bu kullanıcı için daha uygundur. Ayrıca, Gönder düğmesini tıkladıktan sonra, tüm form doğrulama sağlamak için iyi olurdu.
Kullanıcı formun teslim butona tıkladığı zaman doğrulama geçerse nedenle, ben, varsayılan eylemi durdurma benim doğrulama yapıyor ve ardından geleneksel göndermek işlevselliğini renable çalışılıyor. Bunu yapmak için, ben form.submit() yöntemi kullanıyorum ama, bu form.submit kadar olması gerektiği gibi ne yazık ki, bu () herhangi bir düğmeye tıklandığında olmadan çağrılabilir (Gönder düğmesi değişken göndermek değil .) Bu benim PHP komut formu teslim edildiğini tespit başarısız demektir.
Bu geçici bir çözüm için doğru yolu nedir? Standart bir çözüm formun id adı vardır doğrulama, geçtikten sonra, forma bir gizli alan eklemek gibi görünüyor. Form.submit () çağrıldığında, sonra bu teslim düğmesinin yerinde birlikte geçirilir. Ancak, bu çözüm benim için çok hantal ve ben gerektiğini olmadığını, bu yüzden merak ediyorum görünüyor:
a) formu itimat etmediği teslim edildiği tespit etmek için alternatif bir yöntem kullanın Gönder düğmesini geçen güveniyor. Yani ne alternatif varsa? Açıkçası, sadece baştan bir ekstra gizli alanına sahip hiç iyi değil.
b) benim olmayan JavaScript tasarımını korumak için izin veren bir alternatif JavaScript çözümü kullanın. Örneğin, bana ekstra veri geçmesine olanak form.submit bir alternatif () var?
c) O kadar emmek ve sadece JavaScript kullanarak gizli bir alan eklemek.
UPDATE: I've accepted the correct answer but I just wanted to clarify my mistake here so it would be more helpful for others. I use Mootools and I very naively believed that when I used addEvent('submit' ...) I needed to immediately call event.stop() in order to prevent the from from being submitted. Actually this is not the case and I can just call event.stop() only if validation fails. Otherwise, the default submit gets fired, as usual, and using form.submit() becomes completely unnecessary.