Я пытался проверить электронную почту availibity с помощью Ajax и JQuery скрипт следующим образом,Codeigniter наличие проверка Аякса электронной почты
мой контроллер:
$get_result = $this->user->check_email_availablity();
if($get_result == FALSE) {
$validate['message'] = '<p>Email is not available.</p>';
} else {
$validate['message'] = '<p>Email is available.</p>';
}
$this->load->view('user/signup', $validate);
моя модель:
function check_email_availablity() {
$email = $this->input->post('u_email');
$query = $this->db->query('SELECT u_email FROM tbl_users where u_email = "'.$email.'"');
if($query->num_rows() === 1) {
return FALSE;
} else {
return TRUE;
}
}
мои JS:
$(document).ready(function() {
/// make loader hidden in start
$('#Loading').hide();
$('#email').blur(function(){
var a = $("#email").val();
var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-][email protected][a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
// check if email is valid
if(filter.test(a)){
// show loader
$('#Loading').show();
$.post("<?php echo base_url()?>main/signup", {
email: $('#email').val()
},
function(response){
//#emailInfo is a span which will show you message
$('#Loading').hide();
setTimeout("finishAjax('Loading', '"+escape(response)+"')", 400);
});
return false;
}
});
function finishAjax(id, response){
$('#'+id).html(unescape(response));
$('#'+id).fadeIn();
}
});
мой взгляд:
<?php echo form_input('u_email', set_value('u_email'), 'class="form-control" id="email"'); ?>
<span id="Loading"><?php echo $message; ?></span>
Моя проблема заключается в модели всегда возвращает TRUE, и показывает «электронная почта доступна» сообщение, как я могу проверить наличие электронного живого
Да, я тоже проверил этот путь и '> 0' остался –
echo $ query-> num_rows() и проверить результат .. это его возврат 1? – shafiq
Нет его возврата 0 после нажатия кнопки отправки только возврат 1 –