项目——报名信息登记系统

一、项目描述

项目是一个简单的人员登录系统,比如用在报名人员登记处。实现了让报名者登录注册进入系统后登记信息,不需要专门的管理人员去登记信息。登记信息后可随时登录系统去修改删除自己的信息。

二、使用技术

Node.js+Express+mongoose+session+jQuery(ajax)+Bootstrap

三、整体思路

登录/注册页面: 点击对应的按钮,发送get请求,通过router来渲染对应的页面。填写完注册表单点击提交按钮,利用jQuery中的ajax向服务端发出post请求,请求数据是表单序列化内容,在路由中利用mongoose数据库查询注册邮箱与昵称是否已存在数据库中,存在则返回对应的状态码到注册页面,页面根据返回的状态码提示错误信息,若都不存在,则对密码进行md5加密后保存注册信息到数据库中,并且将注册信息记录在 req.session中,返回对应状态码到注册页面,注册页面重定向到学生信息展示页面;填写完登录表单点击提交按钮,利用jQuery中的ajax向服务端发出post请求,请求数据是表单序列化内容,在路由中利用mongoose数据库查询填写的邮箱与密码是否能在数据中查到,查到返回状态码给客户端,客户端重定向到学生信息展示页面,若查不到,返回对应状态码给登录页面,做出对用的提示。
学生信息添加/编辑页面: 登录/注册成功后客户端重定向到学生信息展示页面,利用模板引擎传入已报名登记的学生信息和登录人员的信息,来渲染客户端页面。为了防止重复,在渲染页面前对根据学生的学号对数据库中数据做了去重处理。编辑和删除操作类似,根据get请求req.query和post请求req.body中的id信息来查找要编辑/删除的学生信息,修改后利用res.redirect('/students')重定向到学生信息展示页面,进行对应的页面渲染。
页面权限: 学生信息展示页面、编辑页面的权限由req.session决定。

原文地址:https://www.cnblogs.com/yyrecord/p/13520330.html