我试图将mysql查询的结果放入变量中,以便检查它是否未定义,并根据它执行任务。
问题是查询似乎由于某种原因而无法正常工作。这是我的代码:
exports.check = function(zmail, password){
var check = client.query('SELECT id FROM passwords WHERE
email="'+zmail+'"');
console.log(check);
/*
if(typeof check == 'undefined'){
console.log("wrong email");
}else{
var savedemail = check[0].id;
console.log(savedemail, zmail);
}
*/
}
我知道查询有效,因为它作为一个函数运行...我想我必须以错误的方式将它放入变量中。有谁知道如何正确地做到这一点?
更新......我尝试了这个答案,但它没有用。当id未定义时,服务器崩溃!这是不起作用的代码:
var check = client.query('SELECT id FROM passwords WHERE email="'+zmail+'"', function(err,data){
if(data == null){
console.log("wrong email");
}else{
var savedemail = data[0].id;
console.log(savedemail, zmail);
}
});
答案 0 :(得分:1)
也许您需要使用这样的回调:
exports.check = function(zmail, password){
var check = client.query('SELECT id FROM passwords WHERE email="'+zmail+'"', function(err, data){
console.log(data);
});
}