login처리

app.js
로그인 관련 라우팅 처리

app.get('/login',user.loginForm)
app.post('/login',user.loginEnd)
app.get('/logout', user.logOut);

members.js
post방식으로 했을시 loginEnd 실행

exports.loginEnd=function(req,res){
    //사용자가 입력한 값
    var uid=req.body.userid;
    var upw=req.body.pwd;
    var data={userid:uid,pwd:upw}
    //res.json(data);
    userdb.loginCheck(data,req,res);
}


db 로그인 체크
session생성

//로그인 처리
exports.loginCheck=(data,req,res)=>{
    db.getConnection(dbconfig,function(err,con){
        if(err) throw err;
        var sql="select * from node_member where userid=:userid and pwd=:pwd";
        con.execute(sql,data,function(err,result){
            if(err) throw err;
            con.close(function(err){
                if(err) throw err;
                //console.dir(result);
                var obj={};
                if(result.rows.length==0){
                    //아이디와 비번이 틀린 경우
                    obj.loginUser=null;
                    obj.isLogin=false;
                }else{
                    //회원이 맞다면 obj.loginUser에 회원 정보를 저장하자.
                    obj.isLogin=true;
                    var userData=result.rows;
                    var tmpUser={
                        num:userData[0][0],
                        name:userData[0][1],
                        userid:userData[0][2],
                        email:userData[0][4]
                    }
                    obj.loginUser=tmpUser;
                }
                //세션에 obj를 저장
                //콜백함수를 이용하여 저장이 완료된 이후 페이지 이동하도록 처리한다.
                req.session.loginData=obj;
                req.session.save(function(err){
                    if(err) throw err;
                    res.render('user/loginResult', req.session.loginData);
                    //res.redirect('/');
                })

            })//close() end---

        })//execute() end---------------
    })//getConnection() end--------------
}

로그인 결과 처리

<%
    console.log(typeof isLogin);
    if(!isLogin){
%>

        <script>
            alert('아이디 또는 비밀번호가 일치하지 않아요');
            history.back();
        </script>
<%
    }else{
%>
        <script>
            //alert('<%=loginUser.name%>님 환영합니다.');
            location.href='/';
        </script>
<%    
    }

%>

+ Recent posts