Heim > Fragen und Antworten > Hauptteil
Ich möchte schnell ein Demonstrationssystem erstellen, ich möchte es selbst mit nodejs erstellen.
Obwohl es sich um statische Seiten handelt, muss die Anmeldefunktion abgeschlossen werden (keine Registrierung erforderlich, das Passwort kann direkt der Datenbank zugeordnet werden) und erst nach der Anmeldung können Sie zur Startseite der Seite springen, ohne sich anzumelden, da ich ein Neuling bin Ich weiß nicht, wie es geht. Bitte helfen Sie mir mit der Anleitung und wie ich es schnell fertigstellen kann
代言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再做出动作。大概的思路的这样,我也是小白,希望可以帮到你。