Nodejs-毕业设计4-登录页面

Posted 有一个小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nodejs-毕业设计4-登录页面相关的知识,希望对你有一定的参考价值。

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-登录页面的主要内容,如果未能解决你的问题,请参考以下文章

Nodejs:npm run build之后,distindex.html页面在火狐中可以正常显示登录页面并登录成功,在Chrome中可以正常显示登录页面,登录失败

nodejs中间件拦截,express不登录无法进入后台页面

NodeJS学习笔记——搭建开发框架Express,实现Web网站登录验证

登录页面不会重定向到路由到登录页面

nodejs中使用express和passport和mongodb的简单登录页面

《nodejs+gulp+webpack基础实战篇》课程笔记-- 实战演练,构建用户登录