회원가입을 할 때 입력한 사용자의 정보들을 Mysql 에 저장하도록 만들어 볼 것이다.
우선, mysql
과 연결을 해야하기 때문에,
mysql
모듈을 사용하고, 연결한다.
// mysql 에 connect
var mysql = require('mysql');
var conn = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '111111',
port: '3306',
database: 'hc_project'
});
conn.connect();
hc_project
라는 데이터 베이스에 연결했다.
register 부분에서, sql 문을 작성하고, sql 문을 통해서 사용자가 작성한 데이터들을 넣도록 한다.
app.post('/auth/register', function(req, res){
hasher({password:req.body.password}, function(err, pass, salt, hash){
var user = {
authId:'local:'+req.body.username,
username:req.body.username,
password:hash,
salt:salt,
displayName:req.body.displayName
};
//이 부분에 mysql 처리를 해야한다.
var sql = "INSERT INTO users SET ?";
// user 라는 변수가 가리키는 객체가 들어간다.
// sql 문에 들어가는 ? 부분에 users 객체가 들어간다.
conn.query(sql, user, function(err,results){
if(err){
console.log(err);
res.status(500);
}else{
res.redirect('/welcome');
}
});
});
});
users
라는 테이블에 데이터를 삽입한다.
conn.query
를 통해서, sql
문에 변수로 user
를 넣어보내고, err
가 발생하면 err가 찍히고 상태로 500을 보내준다.
만약 err
가 발생하지 않으면 '/welcome
' 페이지로 이동한다.
해당 페이지로 가서 회원가입을 진행하면, mysql 에 입력한 데이터가 잘 들어간 것을 볼 수 있다.