У меня есть 2 поля в форме регистрации: логин и email
И я пытался сделать для них ajax проверку на занятость. Но что-то пошло видимо не по плану, знаний не хватает. Подскажите пожалуйста, как правильно заставить этот механизм работать?
Мой ajax запрос:
if("#email:not(:empty), #name:not(:empty)") {
var email = document.getElementById('email').value;
var name = document.getElementById('name').value;
$.post(dle_root + "engine/ajax/controller.php?mod=registration", { name: name,email: email}, function(data){
$("#email").addClass(' is-invalid');
if (name != name) {
$("#email").addClass(' is-invalid');
} else {
$("#email").removeClass(' is-invalid');
}
if (email != email) {
$("#email").addClass(' is-invalid');
} else {
$("#email").removeClass(' is-invalid');
}
});
};
Мой php запрос:
if( isset($_POST['name']) ) {
$name = $db->safesql(trim(htmlspecialchars($parse->process(convert_unicode($_POST['name'], $config['charset'])), ENT_QUOTES, $config['charset'])));
$name = preg_replace('#\s+#i', ' ', $name);
$allow = check_name($name);
$buffer = (!$allow) ? "<font color=\"green\">" . $lang['reg_ok_ajax'] . "</font>" : "<font color=\"red\">" . $allow . "</font>";
} elseif( isset($_POST['email']) ) {
$email = $db->safesql(trim($_POST['email']));
$allow = check_email($email);
$buffer = (!$allow) ? "<font color=\"green\">Вы можете использовать данный E-Mail для регистрации</font>" : "<font color=\"red\">" . $allow . "</font>";
}