mysql表格明明有数据,为什么提取数据的时候返回空数组??

请教各位前辈,想从mysql中提取用户名、密码来验证登陆,mysql的表里面明明有数据,但是请求是返回一个空数组,检查过数据库语句看不出问题,请问各位前辈,我错哪了~~~~~ 谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢!

代码部分

module.exports = ()=>{
 var router = express.Router();
 //跳到登陆页面
 router.get('/',(req,res)=>{
   res.render('admin/login.ejs',{})
   // res.send('arrive login.js')

 })

//获取登陆页面发过来的用户名和密码
 router.post('/',(req,res)=>{
   console.log(req.body)
   var username = req.body.username;
   var password = commom.md5(req.body.password+commom.MD5_SUFFIX);
   //如果用户名和数据库一致。。。
   db.query(`SELECT * FROM admin_table WHERE username='${username}'`,(err,data)=>{
     console.log(data)
     if(err){
       res.status(500).send('database error').end();
     }else{
       if(data.length == 0){
         res.status(400).send('no admin').end();
       }else{
         if(data[0].password = password){
           //如果密码一致,将管理员ID加到session的admin_id
           req.session[admin_id] = data[0].ID;
           res.redirect('/admin');
         }else{
           res.status(400).send('invalid password').end()
         }
       }
     }
   })

 })

PS:服务器使用express写的

![图片上传中...]

阅读 2.7k
2 个回答

用户名和密码可能错了

我不会express,思路:你打印一下你的sql查询语句,然后到数据库中执行看一下结果

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏