Nodejs后台管理员登陆实例

 

思路:ajax

直接访问后台页面时若是无session则跳转到404数据库

当在登陆页的表单提交时对数据库进行匹配,匹配成功生成session,不然提示用户名或密码错误express

 

准备页面 :后台首页、登陆页、404页,session

 

步骤:async

一、初始化项目sessionmongoose

二、打通路口post

三、链接数据库测试

四、表单配对ui

五、session判断this

 

实例下载

 

核心代码:

未登陆状况下访问后台首页会跳转至404页面

后台页面的js判断:

$(document).ready(function() {
    //未登录自动跳转到登录页
    if (sessionStorage.getItem("admin") !== "1") {
        location.href = "/admin/404/";
    }

登陆成功后调整到后台首页并生成session,表单提交的js判断

$(document).ready(function() {
    //登陆表单文本框装饰效果
$('.g-inputTxt').click(function(){
    $('.g-inputTxt').removeClass('g-inputTxt-focus');
    $(this).addClass('g-inputTxt-focus');
});


});

 var verifyCode = new GVerify("v_container");



function ck(){
    var username = $('#username').val();
     var password = $('#password').val();
     var yzm=verifyCode.validate($("#code_input").val());
     var result="";
         //若是用户名为空
     if (username == "") {
         $('.loginmsg').text("用户名不为空!");
         $('.loginmsg').show();
         return false;
     }

     //若是密码为空
     if (password == "") {
         $('.loginmsg').text("密码不为空!");
         $('.loginmsg').show();
         return false;
     }

     if(!yzm){
         $('.loginmsg').text("验证码不正确!");
         $('.loginmsg').show();
        return false;
    }

    //传递表单数据
    $.ajax({
        url:'/admin/logincheck',
        type:"post",
        data:{
            username:username,
            password:password
        },
        async: false,
        success:function(flag){
            result=flag;
        }
    });
 //根据返回结果判断
    if(result=="0"){
        $('.loginmsg').text("用户名或密码错误!");
        $('.loginmsg').show();
        return false;
    }else{
        sessionStorage.setItem("admin","1");
        location.href="/admin/";
        return false;   
    }
}

 

数据库查询部分

var express = require('express');
var router = express.Router();

var mongoose = require('mongoose');
var userModel = mongoose.model('user');

/* 后台首页 */
router.get('/admin/', function(req, res, next) {
  res.render('admin', { title: '后台首页' });
});

/* 检查页 */
/*登陆*/
router.post('/admin/logincheck',function(req,res,next){
   var username=req.body.username;
   var password=req.body.password;
   var cond = {
    $and:[
        {username:username},
        {password:password}

    ]
}
  userModel.findOne(cond,function(err,doc){
    if(doc==null){
        res.send("0");
        console.log("登陆失败");  
    }else{
       res.send("1");
      console.log("登陆成功");  
    }


  });
 
 
});


module.exports = router;

 

user管理员表增长管理员测试登陆----------------------------------------var user={"username":"admin","password":"123456"}db.users.insert(user);

相关文章
相关标签/搜索