Javascript 当使用AND运算符询问时,节点js mysql返回空结果
我在Node.js中使用MySQL查询时遇到问题 这是我的源代码:Javascript 当使用AND运算符询问时,节点js mysql返回空结果,javascript,mysql,node.js,Javascript,Mysql,Node.js,我在Node.js中使用MySQL查询时遇到问题 这是我的源代码: var passwordHash = sha512(data.passwordLogin).toString('hex'); database.query('SELECT `name`, `email`, `email-validated` FROM Players WHERE `email` = ? AND `password` = ?', [database.escape(data.name), database.esca
var passwordHash = sha512(data.passwordLogin).toString('hex');
database.query('SELECT `name`, `email`, `email-validated` FROM Players WHERE `email` = ? AND `password` = ?', [database.escape(data.name), database.escape(passwordHash)], function (error, results, fields) {
if(error)
logger.error(error);
else
{
logger.debug(results[0].name); //This line returns an empty array
}
});
当我只请求电子邮件时,它工作正常,但在查询中使用AND运算符时,它会返回一个空数组作为结果
提供给查询的数据和数据库中的数据相等
同时尝试访问诸如结果[0]
、结果[0][0]
或结果[0]之类的内容。name
会导致服务器(app.js)崩溃
有什么办法解决这个问题吗?如果您需要有关源代码的更多信息,请询问
我非常感谢您的帮助。您是否验证了包含电子邮件和密码这两个值的行是否确实存在?使用占位符时,您不需要转义。另外,您可以记录
结果
(或者您的意思是记录结果
返回一个空数组?)。