проверка на 2 емайла еднакви ли са

tini4ka

Registered
имам във формата 2 емайла
<input type="email" required="true" value="enter a valid email address" onFocus="value=''" onBlur="if (value=='') value='enter a valid email address'" name="email"/>

<input type="email" required="true" value="enter a valid email address" onFocus="value=''" onBlur="if (value=='') value='enter a valid email address'" name="repeatemail"/>
<input type="submit" onClick="proverka()" value="Send" name="submit"/>


<script language="JavaScript" type="text/javascript">
function proverka()
{
if(document.form.email.value==document.form.repeatemail.value)
{
alert("Email съвпада с Repeat Email");

}
else {
if(document.form.email.value!=document.form.repeatemail.value)
{
alert("Попълни еднакви полета за Email и Repeat Email");

}

}


}

</script>

и съставих следната функция за проверка дали са еднакви, така ли трябва да стане ?
 
По-добре го направи с PHP,тези проверки с java script могът да се заобиколят по доста елементарен начин ...

С PHP:

PHP:
if(isset($_POST['submit']))
{
if($_POST['repeatemail'] != $_POST['email']) {
        echo 'емайла не съвпада';
     }

}
 
Не съм много на "ти" с javascript, но този IF във ELSE-а е безмислен. Защото ти проверяваш първо дали са еднакви ако са еднакви, влизаш в IF условието и ELSE не се зарежда. Ако не са еднкави IF условието не се изпълнява и ти зарежда ELSE, следователно няма нужда и 2-ри път да проверяваш дали са равни вътре в ELSE - а.

: ))

[js]
<script language="JavaScript" type="text/javascript">
function proverka()
{
if(document.form.email.value==document.form.repeatemail.value){
alert("Email съвпада с Repeat Email");
}

else {
alert("Попълни еднакви полета за Email и Repeat Email");
}


}

</script>
[/js]
 
eddyy93 правилно мислиш, но защо и с предния код , а и сега не се изпълнява нищо , алерта не се появява въобще
 
Може би, защото не пишеш правилния път до елементите.

[js]
function proverka() {
var forma = document.getElementById("form");
if(forma.elements['email'].value == forma.elements['repeatemail'].value){
alert("valid");
} else {
alert("invalid");
}
}
[/js]

Това при мен работи, но трябва да имаш id="form" в отварящия таг на формата.

Но както каза eddyy93 най-добре е да правиш проверка и на сървъра.
Иначе няма нищо лошо в проверката с JS, но лесно може да се заобиколи.

Не трябва да разчиташ само на нея :)
 

Горе