2014-11-21 93 views
0

我使用nodejs与表达框架和我的db是postgres db.I有2个问题。首先,当我使用select查询执行登录验证时,它正确执行假设如果用户不在数据库查询终止如何我可以使用,如果没有使用查询end.here我在这里给我的其他部分查询块。然后第二,我使用了2次res.send,所以我得到了一个错误如何渲染页面并将数据发送到ajax调用。无法设置标头发送后,他们发送节点j

script. 
    $(document).ready 
    console.log('bbbbbbbb'); 
    $('#loginform').submit(function(e) { 
    console.log('submit called'); 
    var data = {}; 
    data.email = $('#username').val(); 
    data.password = $('#password').val(); 
    JSON.stringify(data); 
    console.log(data); 


    $.ajax({ 
     url: "/login", 
     type: "POST", 
     dataType: 'json', 
     data: JSON.stringify({ "objectData": data}), 
     contentType: "application/json", 

     success: function(data) { 
     alert('SUCCESS":'+JSON.stringify(data)); 
     var successVar = data; 
     alert(successVar.data); 
     if(successVar.data == "Invalid username And Password"){ 
     location.href='/'; 
     } 
     if(successVar.data == "Login successfully"){ 
      location.href='http://localhost:3000/landing'; 
     } 


     }, 

    }); 
    return false; 
    }); 
My call 


    exports.login = function(req, res) { 
     var resultObject = (req.body.objectData); 
     var user = client.query("SELECT * FROM login where email_id='" + resultObject.email + "'   AND password='" + resultObject.password + "'"); 

    user.on("row", function(row ,err) { 
    console.log(row); 

    var register_id = row.login_id; 
    console.log(register_id); 

    res.send({data:"Login successfully"}); 
    res.render('landing.jade'); 
    }); 

    user.on("end", function(result) { 
    res.send({data:"Invalid username And Password"}); 

    }); 

    }; 

回答

1

享受这个代码

exports.login = function(req, res) { 
    console.log("enter the login999999999"); 
    console.log(req.body); 
    var resultObject = (req.body.objectData); 

client.query("SELECT * FROM login where email_id='" + resultObject.email + "' AND password='" + resultObject.password + "'", function(err, result) { 
    console.log("Row count: %d",result.rows.length); // n 
    if(result.rows.length>0){ 
     console.log('successfully'); 
     res.send({data:"Login successfully"}); 
    } else { 
     console.log('not successfully'); 
     res.send({data:"Invalid username And Password"}); 
    } 
}); 
}; 
0

很简单:

res.render('landing',{'data':data}) 
+0

而我试试这个,但它不会渲染页面 – smile 2014-11-21 06:52:52

相关问题