Nodejs使用coffeescript编写的用户注册/登陆代码(MySQL)
记录一下,以备后用
Settings = require '../../settings.js' exports.register = (req, res) -> nick_name = req.body.nick_name
email = req.body.email
password = req.body.password # 配置变量
table_name = 'user_info'
database = Settings.mysql.database # 获取当前时间
dateObj = new Date() year = dateObj.getFullYear()
month = dateObj.getMonth() + 1
day = dateObj.getDate()
hour = dateObj.getHours()
min = dateObj.getMinutes()
sec = dateObj.getSeconds() console.log month.length
date_str = year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + sec
#console.log date_str # 选择使用的数据库
mysqldb.query('USE ' + database) # 判断邮箱,进行注册
sql = "select * from " + table_name + " where email = '" + email + "'"
console.log sql
mysqldb.query(sql, (err, data) ->
if (err)
return res.jsonp({"status":-1, "message":"数据库出错"})
else
if (data.length > 0)
return res.jsonp({"status":-2, "message":"邮箱已经存在"})
else
sql = "select * from " + table_name + " where nick_name = '" + nick_name + "'"
mysqldb.query(sql, (err, data) ->
if (data.length > 0)
return res.jsonp({"status":-3, "message":"昵称已存在"})
else
mysqldb.query(
'INSERT INTO ' + table_name + ' SET nick_name = ?, email = ?, ctime = ?, password = ?',
[nick_name, email, date_str, password])
return res.jsonp({"status":0, "message":"注册成功"})
)
) exports.login = (req, res) -> email = req.body.email
password = req.body.password # 配置变量
table_name = 'user_info'
database = Settings.mysql.database # 选择使用的数据库
mysqldb.query('USE ' + database) # 判断邮箱,进行注册
sql = "select * from " + table_name + " where email = '" + email + "'"
console.log sql
mysqldb.query(sql, (err, data) ->
if (err)
return res.jsonp({"status":-1, "message":"数据库出错"})
else
if (data.length == 0)
return res.jsonp({"status":-2, "message":"用户不存在"})
else
if (data[0].password == password)
return res.jsonp({"status":0, "message":"登陆成功"})
else
return res.jsonp({"status":-3, "message":"用户名或密码错误"})
)
Nodejs使用coffeescript编写的用户注册/登陆代码(MySQL)的更多相关文章
- 微信小程序_(校园视)开发用户注册登陆
微信小程序_(校园视) 开发用户注册登陆 传送门 微信小程序_(校园视) 开发上传视频业务 传送门 微信小程序_(校园视) 开发视频的展示页-上 传送门 微信小程序_(校园视) 开发视频的展示页-下 ...
- CoffeeScript编写简单新闻页(仅UI)
CoffeeScript编写简单新闻页(仅UI) 1. 配置(在公司搭建好的环境下配置) omnisocials-backend/src/backend/modules/member/config/m ...
- java 用户注册登陆Demo
一个用户注册登陆的系统,用到了MD5加密处理密码,实现了一个简单的数据库连接池connectionPool, 实现了注册,登陆,登陆之后修改用户信息等功能,非常适合初学者 一.准备工作 数据库:MyS ...
- 如何提升我的HTML&CSS技术,编写有结构的代码
前言 之前写了四篇HTML和CSS的知识点,也相当于是一个知识点汇总.有需要的可以收藏,平时开发过程中应该会遇到这些点,到时候再查看这些博客可能更容易理解.从这篇开始更多的介绍开发过程经常让人头痛的前 ...
- 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点
深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 2011-12-28 23:00 by 汤姆大叔, 139489 阅读, 119 评论, 收藏, 编辑 才华横溢的 ...
- 编写高质量JS代码的68个有效方法(八)
[20141227]编写高质量JS代码的68个有效方法(八) *:first-child { margin-top: 0 !important; } body>*:last-child { ma ...
- 编写高质量JS代码的68个有效方法(七)
[20141220]编写高质量JS代码的68个有效方法(七) *:first-child { margin-top: 0 !important; } body>*:last-child { ma ...
- 编写高质量JS代码的68个有效方法(六)
[20141213]编写高质量JS代码的68个有效方法(六) *:first-child { margin-top: 0 !important; } body>*:last-child { ma ...
- 编写高质量JS代码的68个有效方法(四)
[20141129]编写高质量JS代码的68个有效方法(四) *:first-child { margin-top: 0 !important; } body>*:last-child { ma ...
随机推荐
- 苦B的程序猿道路数据验证
发生了什么 再一次苦B程序猿和苦C程序猿结对话发生编程周期 此代码: public void deleteAllExtendAclsFromContent(String contentId) thro ...
- 跨域 Iframe 通信解决方案(兼容 IE 系列浏览器。)
实现思路: 1.postMessage(IE8+, Firefox 3.1+, Opera 9+, Safari, and Chrome) 2.利用window.navigator共享信息,使支持IE ...
- RH253读书笔记(6)-Lab 6 Implementing Web(HTTP) Services
Lab 6 Implementing Web(HTTP) Services Goal: To implement a Web(HTTP) server with a virtual host and ...
- ASP.NET MVC4实现URL伪静态
1.在Web.config添加节点配置: <system.webServer> <modules runAllManagedModulesForAllRequests="t ...
- Linux网络编程一站式学习
提要 学过非常多遍计算机网络,依旧不会网络编程. 看完这篇文章之后就不会是这样了. 环境:Ubuntu14.04 64bit 何为Socket 是基于TCP/IP的网络应用编程中使用的有关数据通信的概 ...
- Android 墙纸设置代码 详细说明
使游戏图像列表.思考添加壁纸功能.我发了一些资料. 1 别忘记在ApplicationManifest.xml 中加上权限的设置. <uses-permission android:name = ...
- IOS开发——Protocol使用协议
protocol ['prəutəkɔl] (样例:http://blog.sina.com.cn/s/blog_6aafe9c90100yozz.html ) 一.说明 两个类进行通讯,用协议就比 ...
- [.Net Tools] 超強大的封裝工具 Advanced Installer
原文:[.Net Tools] 超强大的封装工具Advanced Installer 日前在网路上晃到这家公司的产品http://www.advancedinstaller.com/,就直接下载并且安 ...
- MySQL分页实现
mysql> select pname from product; +--------+ | pname | +--------+ | 产品1 | | 产品2 | | 产品三 | +--- ...
- JSCover+WebDriver/Selenium获得JS
代码覆盖
我们看JSCover(http://tntim96.github.io/JSCover/manual/manual.xml)介绍及使用说明的时候,往往被图形界面所吸引.这样的方式比較适合手工操作,点击 ...