今天是学习node的第一天
准备事项,node,mysql,navicat
一、创建node项目
npm init
一路傻瓜式回车,然后我们就得到了这样一个文件
二、下载mysql依赖(已经安装好mysql哦)
npm install mysql -save
三、简单整理下项目
四、建表
我是直接用navicat建的表,注意数据库名和表名不要写错了
ps:后面操作中发现一个问题,输入中文字符会报错,原来没有处理字符集,需要我们在建数据库的时候就处理下字符集,改为utf8,如果建完表之后重新修改数据库字符集,需要重新建表哦
五、开始写代码,
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>register</title>
</head>
<body>
<div>
<label for="user">用户名</label><input type="text" id="user">
</div>
<div>
<label for="password">密码</label><input type="password" id="password">
</div>
<div>
<button id="register">注册</button>
<button id="login">登录</button>
</div>
</body>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script>
$(function () {
$("#register").click(function () {
$.ajax({
url: "http://localhost:3000/register",
type: "POST",
data: {
username: $("#user").val(),
password: $("#password").val()
},
success: function (res) {
alert(res.msg)
if (res.code === 200) {
// TODO....
}
},
error: function (err) {
console.log(err)
}
})
})
})
$(function () {
$("#login").click(function () {
$.ajax({
url: "http://localhost:3000/login",
type: "POST",
data: {
username: $("#user").val(),
password: $("#password").val()
},
success: function (res) {
alert(res.msg)
if (res.code === 200) {
// TODO....
}
},
error: function (err) {
console.log(err)
}
})
})
});
</script>
</html>
index.js
var http = require("http")
var url = require("url")
var qs = require("querystring")
var fs = require("fs")
var connection = require('./util/mysql/mysql')
http.createServer(function (req, res) {
//设置请求头
res.setHeader("Access-Control-Allow-Origin", "*")
if (req.method == "POST") {
//接收发来的用户名和密码
var result = ""
req.addListener("data", function (chunk) {
result += chunk
})
req.on("end", function () {
var user = qs.parse(result);
console.log(user.username, '密码', user.password)
// 写入数据库
let sql = "INSERT INTO `stt-user` (id, name, password) VALUES(0,?,?)"
let params = [user.username, user.password]
console.log(sql, params)
connection.query(sql, params, (err, result) => {
if (err) {
console.log("插入失败" + err.message)
return
}
console.log('插入成功')
})
return
})
} else {
}
}).listen(3000, function (err) {
if (!err) {
console.log("服务器启动成功,正在监听port3000...")
}
})
mysql
const mysql = require(`mysql`)
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'root',
database: 'mysql',
port: '3306'
})
//创建一个connection
connection.connect(function (err) {
if (err) {
console.log('连接失败:' + err)
return
}
console.log('连接成功')
})
module.exports = connection