Mysql
 sql >> Base de données >  >> RDS >> Mysql

TypeError :Impossible de lire la propriété "mot de passe" de non défini dans la route de connexion

votre requête est correcte et ne donne pas d'erreur, vous devez donc également vérifier result.length> 0 puis res.send('email not found')

router.post('/login', (req, res) => {
  var email = req.body.email
  var password = req.body.password

  var GRAB_USER = `SELECT * FROM user_details WHERE email = ?`
  db.query(GRAB_USER, email, (err, result) => {
    if (err) {
        res.send('email not found')
    } 
    else if (result.length==0) {
      res.send('email not found') //this is what you are missing
    }
    else {
      var user = result[0]

      bcrypt.compare(password, user.password, (err, match) => {
        if (err) {
          res.send('password not match')
        } else {
          res.send(user)
        }
      });
    }
  })
})