음 아무래도 진짜 로그인에는 HTTPS 프로토콜을 이용해서 전송되는 값을 암호화해야겠지만,
일단 간단하게 세션과 데이터베이스로 로그인 구성을 만들어 보자.
대충 만들어야 할 것은,
1) 로그인 폼
2) 로그인 처리
3) 로그인 유지
4) 로그아웃
정도가 되시겠다.
로그인 폼은 말그대로 로그인 할 때의 아이디/비밀번호 입력하는 창이고,
로그인 처리는 아이디 혹은 비밀번호의 일치 여부와 로그인 됐음을 알리는 신호를 보내며,
로그인 유지는 로그인이 됐으니까 어느 페이지에서도 로그인 값을 유지시킬 때 쓰면 되겠다.
로그아웃은 로그아웃이고.
이번에 만드려는 로그인은 제목에 쓴 대로 세션과 데이터베이스를 이용해서 작성해보려고 한다. (물론 HTML과 PHP는 기본 포함)
1) 로그인 폼
간단하게 로그인 폼을 구현해보자. CSS를 사용하여 이쁘게 만들면 보기도 좋겠지만,
간단한 로그인 구현이 목적이니깐 간결하게 만들어서,
<html>
<form action="login.php" method="POST">
<span>id</span>
<br />
<input type="text" id="loginID">
<br />
<span>pass</span>
<br />
<input type="password" id="loginPASS">
<br />
<input type="submit" value="로그인">
</form>
</html>
아이디와 비밀번호는 각각 loginID, loginPASS라는 id로 지정시켜놓고, 이 값을 login.php로 POST방식을 통해 보낸다.
전송 방식에는 POST와 GET방식이 있는데, GET방식은 홈페이지 주소에 나타나는 정보,
예를 들자면,
http://test.com/?page=3
page=3과 같이 주소를 통해서 page의 값이 3임을 보내는 방식을 말한다.
반면, POST방식은 주소에서 값이 드러나지 않으며, 페이지 내부에서 보낸다.
쉽게 생각해보더라도 GET방식은 주소에 바로 노출이 되기 때문에, 로그인에는 적합하지 않으므로 POST방식을 사용한다.