Nodejs-畢業設計4-登入頁面

來源:互聯網
上載者:User

標籤:方法   module   sql   不一致   軟體   pos   cli   伺服器端   登陸   

1.我們在首頁先實現一個簡單的登入頁面

靜態檔案包括樣式,指令碼,圖片放在

2.先看看成果(自己可以加樣式,檢驗是否為空白的指令碼)

 

 3.要與後台進行互動了,登入的思路:把使用者名稱和密碼提交,在資料庫的使用者表查詢使用者名稱為***的密碼,如果沒有則說明使用者名稱不存在,如果密碼和輸入不一致則密碼錯誤,如果密碼一致則登入成功跳轉至首頁。

4.在index.js的頭部加入

var mysql = require(‘mysql‘);
var usr=require(‘dao/Connect‘);
var moment = require(‘moment‘);
var bodyParser = require(‘body-parser‘);
var app = express();
app.use(bodyParser.urlencoded({extended: false}));
app.use(bodyParser.json());

紅色圈著的就是訪問mysql資料庫的關鍵,根據路徑,我們在項目下的node_modules檔案夾下建立dao檔案夾,再在dao裡建立Connect.js

5.在Connect.js裡寫上資料庫的配置,使用者名稱密碼和資料表,記得最後要exports匯出方法。

 

6.開啟mysql軟體,在開始輸入搜尋cmd並以管理員身份開啟cmd,開啟後輸入net start mysql啟動資料庫

7.在mysql裡建立串連

 

8.在smartCampus右鍵建立資料庫,名為smartcampus,建立一個admin表

 

先填一個資料

這樣資料庫就可以了。接下來我們來做互動

9.先寫好路徑,get是擷取這個頁面,如果我們要在頁面上提交資料,則要用post,登入就是要把使用者名稱密碼提交。

index.js使用router.post(‘/‘,function(req,res){});如下

router.post(‘/‘,function(req,res){
client=usr.connect();
var admin_id = req.body.admin_id;
var admin_psd = req.body.admin_psd;
usr.loginFun(client,admin_id, function (results) {
if(results==‘‘){
res.locals.error = ‘使用者不存在‘;
res.render(‘index‘, { title: ‘smartCampus‘ });
return;
}else{
if(results[0].admin_psd==admin_psd){
res.locals.islogin=admin_id;//記錄登入使用者名稱
res.cookie(‘islogin‘,res.locals.islogin,{maxAge:60000});
res.redirect(‘success‘);
return;
}else{
res.locals.error = ‘密碼錯誤‘;
res.render(‘index‘, { title: ‘smartCampus‘ });
return;
}
}
});
});

 10.在Connect.js寫登入方法並匯出

 11.成功跳轉頁面,在index.js

router.get(‘/success‘, function(req, res, next) {
res.send(‘成功登陸‘);
});

12.為了更好使用者體驗,當使用者名稱不存在或密碼不正確時,我們在頁面上提示。在index.ejs的form表單下面寫上

<% if (locals.error) { %>
<p><%= error %></p><br>
<% } %>

我們在伺服器端設定了res.locals.error = ‘密碼錯誤‘;,所以渲染到頁面時,就會判斷有沒有error這個值,有的話就顯示

13.現在我們來看看效果

14.密碼錯誤

15.成功登陸,跳轉到success頁面

 

Nodejs-畢業設計4-登入頁面

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.