要快速做一個示範系統,由於後台缺乏,想自己用nodejs搭建.
雖然都是靜態頁面,但是要完成登入功能(無需註冊,可以直接資料庫分配密碼),登入之後才能跳轉到頁面首頁,若未登入而直接輸入首頁路徑,則跳到登入頁面.
由於是小白不太會弄.請各位幫忙指引方向,怎麼能快速完成
代言2017-06-10 09:51:02
可以使用express的session,然後寫一個checkLogin的方法對!req.session.user是否登入進行判斷。然後再寫一份checkNoLogin的方法再對req.session.user進行判斷。
漂亮男人2017-06-10 09:51:02
html我就不給你寫了,基礎的表單內容
js的ajax請求:
$("#userLogin").click(function(){
$.ajax({
url: "/login",
type: "GET",
data: {
username: $("#email-one").val(), // 用户名和密码
password: $("#password-one").val()
},
success: function(data){
if(data.status==1){
window.location.href='index.html'; // 请求成功后到你的主页
}else{
alert(data.msg);
}
},
error: function(){
layer.msg('访问失败', hint);
}
});
});
下面的程式碼如果看不懂的話,可以參考/a/11...
var express=require("express");
var events = require('events');
var app=express();
var session=require("session");
var path=require("path");
var mysql=require("mysql");
var dirname=__dirname;
app.use(express.static(path.join(__dirname, 'project')));
app.get("/login",function(req,res){
// 连接数据库
var connection=mysql.createConnection({
host:"localhost",
user:"root",
password:"数据库密码",
database:"node"
});
connection.connect();
var sql="select * from user where username='"+req.query.username+"' and password='"+req.query.password+"'";
connection.query(sql,function(err,result){
if(err){
res.end("登陆失败");
}
if(result.length==0){
res.json({status:0,msg:“用户名或密码不正确”});
}else{
req.session.user=req.query.username;
req.session.isLogin=true;
res.json({status:1,msg:“登录成功”});
}
})
connection.end();
})
app.listen(8081);
後面頁面的訪問必須有session訊息,你可以在每個頁面向後台發出請求。然後你用node偵測session內容,ajax再做出動作。大概的思路的這樣,我也是小白,希望可以幫到你。