Я застрял с этого утра с Jquery Validation Engine и codeigniter. У меня есть форма с именем, адресом электронной почты, паролем ... и я проверяю все эти поля с помощью Jquery, а затем в php.
Когда пользователь вводит уже использованное письмо, появляется окно с сообщением об ошибке, НО форма все еще отправляется ... Если я оставляю пустое поле электронной почты, оно не отправляется.
Так что я думаю, что когда он проверяет в базе данных, он не выполняет хорошие действия впоследствии (он возвращает ложь ...)
Это код на мой взгляд:
<?php $data_email_signup = array(
'name' => 'email_signup',
'id' => 'email_signup',
validate[required,custom[email],ajax[ajaxEmailCall]]'
);
echo form_input($data_email_signup); ?>
...
...
jQuery(document).ready(function(){
jQuery("#form_signup").validationEngine({
submitHandler: function(form) {
form.submit();
}
});
});
В jquery.validationEngine-fr.js
У меня есть:
"ajaxEmailCall": {
"url": "/.../ajaxValidateFieldEmail.php",
"alertTextLoad": "* Please wait",
"alertText": "* Email already used"
},
В файле ajaxValidateFieldEmail.php
У меня есть:
<?php
$validateValue=$_POST['fieldValue'];
$validateId=$_POST['fieldId'];
$arrayToJs = array();
$arrayToJs[0] = $validateId;
$resultats=$connexion->query("SELECT ...");
$count = $resultats->rowCount();
if($count == 0){
$arrayToJs[1] = true;
echo json_encode($arrayToJs);
}
else {
$arrayToJs[1] = false;
echo json_encode($arrayToJs);
}
?>
Firebug возвращает FALSE и отображает Электронная почта уже использовалась , когда я ввожу уже использованную электронную почту, но я не понимаю, почему форма все равно проверяется.
У кого-нибудь есть идея?