본문 바로가기
Web/PHP

[PHP] 쿠키와 세션 / login&signup 구현

by merona99 2018. 11. 17.
반응형

쿠키와 세션



쿠키


  • cookie

  • 클라이언트(브라우저)에 데이터를 저장

  • setCookie

  • $_COOKIE

보안상으로는 쿠키를 사용하지 말자.


<소스코드1>

setcookie로 cookie1이라는 키값merona라는 value값을 설정

두번째는 time()현재시간을 나타내는것이고, time()+6060초동안 유지된다는 것.


<소스코드2>

cookie1를 보여주고

현재시간에서 cookie2의 시간을 빼준 시간 값이 나옴


<서버1>

쿠키만 추가됬으니까 서버상 보이는것은 없다.


<서버2>

이렇게 cookie1의 value값이 나오고

시간이 나온다.



세션


  • session

  • SID(session ID)를 식별자로 서버에 데이터를 저장

  • SID로는 쿠키나 도메인 파라미터를 사용

  • session_start(); 로 시작, 스크립트의 최상단에 위치해야 함

  • $_SESSION

  • 데이터는 서버 내에 파일이나 DB에 저장 함

  • 주로 사용자 인증시에 사용함


[로그인구현]

<login.html>

<서버>


<login_process.php>

로그인을 할경우 세션이 생성됨.

만약 세션이 있을경우 user_id에 유저id를 넣고 header를 통해 ./main.php로 이동

(./를 사용할경우 앞에 url을 전부 안써도 됨)


<signup.html>

회원가입 폼


<DB>

회원가입시 사용하게 될 table 인 user table.


<서버>


<아이디 생성>


<signup.php>

회원가입에서 작성한 내용이 데이터베이스에 저장되는 과정


p9~14 : 비밀번호와 비밀번호 확인이 같은지 확인

p15~20 : 회원가입시 작성하지 않은 부분이 있는지 확인

p22~37 : 회원가입 내용을 데이터베이스로 sql쿼리를 보냄.

p38~44 : 성공적일시 sucessful!!을 출력후 로그인 페이지로 이동하는 링크를 보임

  실패시 에러를 출력


<회원가입 성공>


<DB>

뚠! iris 아이디가 생성됨!


<로그인 페이지로 이동>

아이디랑 패스워드 입력


<main.php>

로그인 성공시 보이는 화면

만약 세션이 없다면 login.html로 이동


<main화면>


<logout.php>

로그아웃시 세션은 지워지고 로그인페이지로 이동됨


<로그아웃>



//자유게시판은 이후 mysqli api로 다시 구현할 예정

반응형

'Web > PHP' 카테고리의 다른 글

[PHP] 디버깅 SSH  (0) 2018.11.17
[PHP] 변수  (0) 2018.11.05
[Bitnami] apache / mysql running 오류  (0) 2018.11.05
[PHP] PDO  (0) 2018.11.02
[PHP] 파일업로드 (오류)  (0) 2018.11.01

댓글