使用Node.js + Navicat for mysql实现的登录注册功能

数据库中存在有”user_id,user_name,password,user_img,user_number“字段,其中"user_id,user_img,user_number"可为空

//注册
app.all('/XCDoor/reset',(req,res)=>{
//账号和密码不为空
if(req.query.user_name !== '' && req.query.password !== ''){
    // 根据前端传过来的用户名来查找数据库该用户名
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>{
// 为0代表未查到用户
if(r.length == 0){
          // 往数据库中插入一条记录,存入前端传过来的用户名和密码,其余可为空的字段以' '表示
conn.query("INSERT INTO `user_info` VALUES ('','" + req.query.user_name + "','" + req.query.password + "','','')")
          // 返回给前端"注册成功"
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'注册成功!',data:r})))
}else{ // 否则查到用户信息
          // 返回给前端"用户名存在"
       conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'用户名存在!',data:r})))
}
})
}else{
     // 返回给前端"用户名或密码不能为空"
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'用户名或密码不能为空!',data:r})))
}
})
// 登录
app.all('/XCDoor/login',(req,res)=>{
  // 判断前端传过来的值是否为空,如果为空,提示"用户名或密码不能为空"
if(req.query.user_name == '' || req.query.password == ''){
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'用户名或密码不能为空!'})))
}
  // 根据前端传过来的用户名在数据库中查找该用户名
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>{
// 为0代表未查到用户
if(r.length == 0){
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'您输入的账号未注册!'})))
}else{
       // 判断前端传过来的用户名和密码是否与数据库中查找到的一致
if(req.query.user_name == r[0].user_name && req.query.password == r[0].password){
          // 一致则返回给前端"登录成功"
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'登录成功!',data:r})))
}else{
          // 否则返回给前端"用户名和密码错误"
conn.query("select * from `user_info` where user_name = '" + req.query.user_name +"'",(e,r)=>res.json(new Result({msg:'用户名或密码错误!'})))
}
}
})
})

Node.js实现登录注册功能的更多相关文章

  1. node.js连接数据库登录注册,修改用户(页面的ajax请求)

    首先给大家看一下目录结构,结构如下: index.html 首页(显示所有的用户信息) login.html 登录页 register.html 注册页 db.js 配置链接数据库参数 dbhelpe ...

  2. Node数据库入门(登录注册功能)

    1.安装 (1).mysql模块安装 npm i mysql -D (2).co-msql模块安装(该模块不是一个独立的模块,而是mysql的封装,他可以把普通接连封装成一个可以做异步调用的连接) n ...

  3. vue koa2 mongodb 从零开始做个人博客(一) 登录注册功能前端部分

    0.效果演示 插入视频插不进来,就很烦.可以出门右拐去优酷看下(点我!). 1.准备工作 1.1前端框架 前端使用了基于vue.js的nuxt.js.为什么使用nuxt.js? 首先我做的是博客的项目 ...

  4. js验证登录注册

    js验证登录注册的优势,在前台直接验证,不需要在后台读取返回数据验证,减轻服务器压力. 登陆验证得必要性,拦截恶意脚本的登录注册攻击.哈哈,当然有些高手是可以直接跳过js验证的. 所以还是后台验证,并 ...

  5. Java Spring+Mysql+Mybatis 实现用户登录注册功能

    前言: 最近在学习Java的编程,前辈让我写一个包含数据库和前端的用户登录功能,通过看博客等我先是写了一个最基础的servlet+jsp,再到后来开始用maven进行编程,最终的完成版是一个 Spri ...

  6. SSM 实现登录注册功能

    1.上一篇SSM框架搭建好了之后就要开始写功能了,现在来写一个简单的登录注册功能 这几个包是自己手动创建的,然后往里面写代码 2.代码详情 package com.maike.controller; ...

  7. flask 开发用户登录注册功能

    flask 开发用户登录注册功能 flask开发过程议案需要四个模块:html页面模板.form表单.db数据库操作.app视图函数 1.主程序 # app.py # Auther: hhh5460 ...

  8. JAVAEE_Servlet_20_登录注册功能

    实现登录注册功能 注册功能 import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import j ...

  9. 一个关于vue+mysql+express的全栈项目(三)------ 登录注册功能的实现(已经密码安全的设计)

    本系列文章,主要是一个前端的视角来实现一些后端的功能,所以不会讲太多的前端东西,主要是分享做这个项目学到的一些东西,,,,, 好了闲话不多说,我们开始搭建后端服务,这里我们采用node的express ...

随机推荐

  1. Dynamics 365客户端编程示例:两个选项集字段的联动

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  2. centos7在线yum安装mysql时官方镜像下载过慢的解决方案

    帮客户调试数据库,搭建一测试环境,centos7最小化安装后,在线安装mysql. 步骤: 1. wget -i http://dev.mysql.com/get/mysql57-community- ...

  3. 【转载】解决:'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    注:网上能搜到的常规解决办法我都试了不好用,这个是最快的解决办法. 以下是转载的解决办法: ****************************************************** ...

  4. 31.Java基础_日期/日期格式/日历类

    Date类 Date对象构造方法 Date对象常用方法 import java.util.*; public class test { public static void main(String[] ...

  5. 06-Node.js学习笔记-创建web服务器

    创建web服务器 //引用系统模块 const http = require('http'); //创建web服务器 //用于处理url地址 const url = require('url'); c ...

  6. JavaScript-----8.数组

    1.数组的概念 数组是指一组数据的集合,其中每个数据被称为元素,在数组中可以存放任意类型的元素 2. 创建数组 创建数组的两种方式: 利用new创建数组 利用数组字面量创建数组(最常用) 2.1 利用 ...

  7. Educational Codeforces Round 77 (Rated for Div. 2)

    A: 尽可能平均然后剩下的平摊 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int ...

  8. C++ Debug 模式下程序崩溃: Expression: is_block_type_valid(header->block_use)

    出现这样的错误,可能有很多种原因,而我出现崩溃的原因是由于代码中定义了vector容器, 未对它进行初始化操作导致的, 只要对它的大小进行初始化操作就行了 崩溃代码:  vector<Rect& ...

  9. 自学Java,需要掌握什么内容才能找到满意的工作?

    首先,这个问题主要问:自学Java编程技术,如果才能找到一份Java编程的工作.按照现在的招聘标准来看,无论你去哪个公司面试,你只需要满足他们公司的需求就可以. 找到一份Java编程工作需要掌握的内容 ...

  10. CSS权重的进制问题

    这是复习篇的第一个知识点,(CSS权重进制在IE6为256,后来扩大到了65536.而现代浏览器则采用更大的数量)在说这个知识点之前我们先来看一个例子 <!DOCTYPE html> &l ...