nodejs+express+mysql(后台实例项目练习2—数据库链接 网页跳转 iframe框架路径问题 模板引擎 )

nodejs+express+mysql(后台实例项目练习—搭建项目)

接着上一篇 实现 数据库链接 

数据库链接 

创建链接数据库js 记得要npm install mysql 

创建在app.js同级

module.exports=db; 设置对外接口.. 

//sql_db.js
var mysql = require('mysql');
var db =mysql.createConnection({host:'localhost',port:3306,user:'root',password:'root',database:'sys_db'
});
module.exports=db;

网页跳转

在路由index.js里写 登录验证

这里因为在访问结束的时候  写了一个DB.end 报了一个错误

node-mysql: connect时的”Cannot enqueue Handshake after already enqueuing a Hand shake”错误

前台Login.ejs 用的post 提交表单 到/login   

body 是express独有的属性 能获得前台数据

//index.js
var express = require('express');
var router = express.Router();
var db = require('../sql_db.js');/* GET home page. */
router.get('/', function(req, res, next) {res.render('sys_login', { title: 'Express' });
});
router.post('/login',function(req,res,next)
{var username = req.body.username;var password = req.body.password;db.query('select * from loginuser where username=? and password=?',[username,password],function(err,results){if(err){console.log(err);}else if(results.length>0){//界面转到index界面res.render('sys_index.ejs');}})})module.exports = router;

 iframe框架路径问题

上面登录后 界面发现头部加载没有问题 但是中间部分 加载失败了

找了一下原因

解决:

1)修改成路径

  

2)修改app.js

因为我不想从新弄一个路由 直接用users 的 这样 当localhost:端口号/的时候 就会访问下面俩个路由

// app.use('/', indexRouter);
// app.use('/users', usersRouter);app.use('/', [indexRouter,usersRouter]);

3)修改users.js 路由

 这里就和 frame 标签 src="/adduser"  匹配上 并加载user_add.ejs界面 

就是这个项目里 所有frame标签 src="/adduser" 就会加载 user_add.ejs

var express = require('express');
var router = express.Router();/* GET users listing. */
router.get('/adduser', function(req, res, next) {res.render('user_add.ejs');
});module.exports = router;

模板引擎

express中ejs模板的基本使用(意外金喜)

修改index.ejs 里的登录信息为数据库实时信息

在index.js路由转换界面的时候传入对象

router.post('/login',function(req,res,next)
{var username = req.body.username;var password = req.body.password;db.query('select * from loginuser where username=? and password=?',[username,password],function(err,results){if(err){console.log(err);}else if(results.length>0){//界面转到index界面res.render('sys_index.ejs',{username:results[0]['userName']});}})})
       欢迎系统管理员: <%=username%> <%=(new Date()).getFullYear()%>年<%=(new Date()).getMonth()%>月<%=(new Date()).getDate()%>日  <% var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];var day= weekday[(new Date()).getDay()]%><%-day%>

相对比较简单

十一去沈阳溜达 十月十二去西安溜达


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部