这个页面主要是管理员的登录页面
在这个页面中,所有进入admin相关的页面 都要校验用户身份
先判断用户是否登录过,如果没有登录就重定向到login页面,
login 路由有get 和post 两种接收方式,如果没有提交表单,就是get ,提交表单就走post,
在post中,校验用户身份,
//提交了一个请求
admin_router.post('/login',(req,res)=>{
//bodyparser解析了post数据放在body
let{username,password}=req.body;
//判断两次
if(config.root_username===username){
if(config.root_password===common.md5(password)){
console.log('超级管理员登录');
req.session['admin_ID']=1;
res.redirect('/admin/')
}else{
showError('用户名或密码错误');
}
}else{
//普通管理员
req.db.query(`SELECT * FROM admin_table WHERE username='${username}'`,(err,data)=>{
if(err){
showError('数据库有误,请重新输入');
console.log(err);
}else if(data.length===0){
showError('用户名或密码错误')
}else{
if(data[0].password===common.md5(password)){
console.log('普通管理员登录成功');
req.session['admin_ID']=data[0].ID;
res.redirect('/admin/');
}else{
showError('用户名或密码错误')
}
}
})
}
function showError(msg) {
res.render('login',{error_msg:msg});
}
登录过的页面,只要进admin就重定向到house 下