nodejs使用mysql和htmllogin表单
我从教程中得到了这个简单的代码到一个样本loginHTML表单,以检测用户和密码是否在我的数据库上的用户注册或不。 此代码可以检测到电子邮件,如果存在,但没有密码。
这里有什么问题?
var express = require('express'); var app = express(); var server = require('http').createServer(app); bodyParser = require('body-parser'); var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'localhost', database: 'chmult', user: 'root', password: '', }); users = []; connections = []; app.get('/', function(req, res){ res.sendFile(__dirname + '/'); }); app.use(bodyParser.urlencoded({ extended: true })); /**bodyParser.json(options) * Parses the text as JSON and exposes the resulting object on req.body. */ app.use(bodyParser.json()); connection.connect(); app.post('/', function(req, res){ var username= req.body.user.username; var password = req.body.user.password; connection.query('SELECT * FROM tesko WHERE username = ?',[username], function (error, results, fields) { if (error) { // console.log("error ocurred",error); res.send({ "code":400, "failed":"error ocurred" }) }else{ // console.log('The solution is: ', results); if(results.length >0){ if([0].password == password){ res.send({ "code":200, "success":"login sucessfull" }); } else{ res.send({ "code":204, "success":"Email and password does not match" }); } } else{ res.send({ "code":204, "success":"Email does not exits" }); } } }); }); app.listen(3231); console.log('Example app listening at port:3231');
我的HTML表单
<form method="post" action=""> <input type="text" name="user[username]"> <input type="text" name="user[password]"> <input type="submit" value="Submit"> </form> </html>
我的桌子上的列名是(用户名,密码)。 两者都是varchar,我试着与其他表具有md5。 仍然无法检测到密码。
这一点的代码看起来可疑:
if(results.length >0){ if([0].password == password){ res.send({ "code":200, "success":"login sucessfull" }); }
特别是[0].password
我希望这是未定义的。
[0]是这里的数组,而不是数组中的索引。 您可能需要结果[0] .password,而不是由它之前的行来判断。
- 无法加载Java脚本文件和bower_components / angular / angular.js
- 如何使用Node.js从json文件中读取数据并将读取的数据显示到html中?
- 节点js。 我如何从HTML调用本地文件
- 如何更改html标题的值
- Uncaught TypeError:canvas.selectAll(…).data(…).enter不是d3中的函数
- 如何使用express和angular 2(打字稿)在待办事项列表中编辑标题
- Node.js生成html
- 通过带有HTML5 <audio>标签的stream式MP3文件进行search
- 如何加载webpack捆绑包asynchronous,但按顺序执行?