程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Codeigniter:ajax中的唯一电话号码检查

发布于2023-05-17 22:37     阅读(1088)     评论(0)     点赞(27)     收藏(3)


我在检查数据库中存在的唯一电话号码时遇到问题。在提交时,它会检测我输入的每个数字作为在数据库中找到的数字,即使它不存在。附上下面的代码:

阿贾克斯

<script>
function checkdata(){
var tel = $('.tel').val();      
var x;
if(tel){
$.ajax({
   url: '<?php echo base_url('index.php/admin/customer/check_phone_availibility1'); ?>',
   data:{tel:tel},
   error: function() {
  alert("An error has occurred.");
   },
   success: function(data) {   
    x= data;

    },
   type: 'POST'
});
if(!x){
alert('This phone exists in database');
$('.tel').val("");
return false;
}
}
}   
</script>

控制器

public function check_phone_availibility1(){
$tel = $this->input->post('tel');
$success = $this->customer_m->check_phone_no_availability($tel);
if($success){
    echo true;
}
else {
    echo false;
} 
 }  

模型

public function check_phone_no_availability($phone){
$query = $this->db->query("SELECT * from customers WHERE phone='$phone'"); 
$phone = $query->result();

if(count($phone))
{
    return false;
}
else
{
    return true;
}       

}

看法

<input type="text" name="phone" value="" class="form-control tel" id="phone" maxlength="10" required="">
<input type="submit" name="submit_btn" value="Save Customer" class="btn btn-success" onclick="return checkdata();">

如果这个问题能得到解决,我将不胜感激。谢谢


解决方案


$var = false;
$var2 = '';
$var3 = null;

产生

count($var) => 1
count($var) => 1
count($var) => 0

所以,在你的模型中,你可以检查你的查询是否产生了任何结果,你可以这样做:

$query = $this->db->query("SELECT * from customers WHERE phone='$phone'"); 
$query_result= $query->result();

return (count($query_result) > 1) ? true : false;

要不就

return ($query_result) ? true : false;


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.phpheidong.com/blog/article/545916/0343f4f3311370dfb76d/

来源:php黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

27 0
收藏该文
已收藏

评论内容:(最多支持255个字符)