Ben göndermek bazı çok basit doğrulama ihtiyacı bir PHP form var. Bir veritabanına form değerleri yazılı uğraşmak olur sunucu tarafı doğrulama biraz var gibi ben oldukça, doğrulama istemci tarafında yapardım. Yani sadece iki parola alanlarında değerleri karşılaştırmak için bir javascript fonksiyonu onSubmit aramak istiyorum. Bu bende budur:
function validate(form){
var password = form.password.value;
var password2 = form.password2.value;
alert("password:"+password+" password2:" + password2);
if (password != password2) {
alert("not equal");
document.getElementByID("passwordError").style.display="inline";
return false;
}
alert("equal");
return true;
}
Fikir iki şifre uyuşmuyor yoksa bir hata mesajı içeren bir varsayılan gizli div görüntülenecek olacağını olmak. Uyarılar sadece onlar maç ya da değil (üretim kodunda kullanılan olmayacaktır) olmadığını belirtmek için sonra tekrar şifre ve password2 değerlerini görüntülemek ve vardır.
Ben bir input type = submit düğmesini kullanarak ve form etiketi işlevini arıyorum:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" onsubmit="return validate(this);">
Her şeyi olmayan eşleşen değerleri girerken beklendiği gibi uyarı edilmektedir. Ben fonksiyon döndürülen yanlış, gerçek ortaya olmazdı teslim umuyordu (ve kabul, geçmiş kullanımına dayalı) olurdu. Ve yine, öyle. Ben şifre alanlarını olmayan eşleşen değerler girerek test ediyorum ve uyarılar açıkça bana değerleri ve eşit değil sonuç gösteriyor, ama gerçek form eylemi hala sürmektedir ve benim veritabanına yazmak için çalışıyor.
PHP oldukça yeni; Bana javascript ile bu şekilde birleştirmek izin vermez bu konuda bir şey var mı? Bir input type = düğmesini kullanmak daha iyi olurdu ve true döndürür işlevi kendisi) (teslim kapsıyor mu?