在javascript节点js

时间:2018-03-29 10:35:00

标签: javascript node.js

我想通过javascript回调代码唯一地验证电子邮件和移动设备。 从sql查询中获取数据,然后唯一地验证电子邮件和移动设备,无人可以注册现有的电子邮件和移动设备



var connection = require('./../config');
module.exports.register=function(req,res){
    var today = new Date();
    let myemail=req.body.email;
    let myphone=req.body.mobile;
    var users={
        "name":req.body.name,
        "email":req.body.email,
        "mobile":req.body.mobile,
        "password":req.body.password
    } 
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
 let validemail=re.test(myemail.toLowerCase());
 if(validemail==false)
 {
    res.json({
        status:false,
        message:'Please enter a valid email id.'
    })
 }

 else{



     connection.query("SELECT COUNT(*) FROM users WHERE email ='"+myemail+"'")  



     connection.query("SELECT COUNT(*) FROM users WHERE mobile ='"+myphone+"'")

     
     

    connection.query('INSERT INTO users SET ?',users, function (error, results, fields) {
      if (error) {
        //   console.log("Errr",error)
          if(error.sqlMessage=='Duplicate entry \''+users.mobile+'\' for key \'mobile\'')
          {
        
                res.json({
                    status:false,
                    message:users.mobile+' You are already registered with this mobile no!'
                })
          }
          else if(error.sqlMessage=='Duplicate entry \''+users.email+'\' for key \'email\'')
          {
        
                res.json({
                    status:false,
                    message:myemail+' You are already registered with this email address'
                })
          }
          else{
        res.json({
            status:false,
            message:'there are some error with query'
        })
    }
      }else{
          res.json({
            status:true,
            data:results,
            message:'user registered sucessfully'
        })
      }
    });
}
}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

我认为这有助于解决您的问题

connection.query("SELECT id FROM table WHERE email=? OR phonenumber=?",(err,result){

    if(result.length){

        return console.log("Duplicate entry found");
    }
    /*--Handle insert query here--*/
    connection.query('INSERT INTO users SET ?',users, function (error, results, fields) {
        //do the rest here
    });


})