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);

相關文章
相關標籤/搜索