Попытка отобразить / admin, если в базе данных mySql есть соответствующее значение - Nodejs Ejs - PullRequest
1 голос
/ 07 мая 2020

Я работал над добавлением пользовательской системы в приложение express моего узла. Это сработало, но теперь я хочу иметь возможность отображать «/ admin» только в том случае, если зарегистрированный пользователь имеет «Admin», записанный в моей mySQL DB (в поле isAdmin). Я не знаю, правильно ли я объясняю, но я думаю, что лучший вариант - поставить еще одно «если» в моем контроллере входа. Я пробовал много способов, но я как бы борюсь с оператором mySql и третьим условием «если».

Вот мой контроллер входа:

exports.login = function(req, res){
var message = '';
var sess = req.session; 
if(req.method == "POST"){
   var post  = req.body;
   var name= post.user_name;
   var pass= post.password;
   var sql="SELECT id, first_name, last_name, user_name FROM `utils` WHERE `user_name`='"+name+"' and password = '"+pass+"'";                           
   mysqlConnection.query(sql, function(err, results){      
      if(results.length){
         req.session.userId = results[0].id;
         req.session.user = results[0];
         console.log(results[0].id);
         res.redirect('/');
         message = 'Login réussi !'
      }
      else{
         message = 'Mauvaises informations.';
         res.render('index.ejs',{message: message});
      }         
   });
} else {
   res.render('index.ejs',{message: message});
}         

};

Спасибо, прошу прощения за мои дерьмовые навыки

...