-
[PHP] Session 을 이용한 로그인, 로그아웃 구현 (DB x)PHP 2024. 2. 22. 21:24
Session 을 통한 간단한 로그인, 로그아웃에 대해 포스팅 해보겠습니다.
index.php
로그인 화면<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>LOGIN</title> <script src="login.js"></script> </head> <body> <form action="login_ok.php" method="post" name="login_form"> 아이디 <input name="id" id="id" type="text" placeholder="아이디 입력"><br> 비밀번호 <input name="pw" id="pw" type="password" placeholder="비밀번호 입력"><br> <button id="login_btn" >로그인</button> </form> <a href="member.php">회원 전용 페이지</a> </body> </html>
login.js
document.addEventListener('DOMContentLoaded', ()=>{ const id = document.querySelector('#id'); const pw = document.querySelector('#pw'); const btn = document.querySelector('#login_btn'); btn.addEventListener('click', (e)=>{ e.preventDefault(); if(id.value === ''){ alert('아이디를 입력해주세요.') id.focus() return false; } if(pw.value === ''){ alert('비밀번호를 입력해주세요.') pw.focus() return false; } document.login_form.submit(); }) });
login_ok.php
로그인 form action php<?php $id = (isset($_POST['id']) && $_POST['id'] != '' )? $_POST['id'] : ''; $pw = (isset($_POST['pw']) && $_POST['pw'] != '' )? $_POST['pw'] : ''; if($id == ''){ echo " <script> alert('아이디를 입력해주세요'); history.go(-1); </script> "; exit; } if($pw == ''){ echo " <script> alert('비밀번호를 입력해주세요'); history.go(-1); </script> "; exit; } if($id == 'guest' && $pw == '1234'){ session_start(); $_SESSION['ss_id'] = $id; echo" <script> alert('로그인 성공'); self.location.href='member.php'; </script> "; }else{ echo " <script> alert('로그인 실패, 아이디 비밀번호 확인해주세요'); self.location.href='index.php'; </script> "; } ?>
아이디 입력하지 않았을 경우
비밀번호 입력하지 않았을 경우
아이디 또는 비밀번호가 일치하지 않을 경우
로그인 후 회원 전용 페이지
<?php session_start(); if(!isset($_SESSION['ss_id'] )|| $_SESSION['ss_id'] == ''){ echo " <script> alert('여기는 회원 전용 페이지입니다. 로그인 후 이용 부탁드립니다.') self.location.href='index.php'; </script> "; exit; }else{ echo "여기는 회원 전용 페이지 입니다.<br>"; } ?> <a href="logout.php">로그아웃</a>
올바른 아이디와 비밀번호로 로그인 성공 시 결과
로그아웃 구현
(logout.php)
session을 종료 시켜서 로그아웃 시킨다<?php session_start(); session_unset(); session_destroy(); ?> <script> window.onload = function() { alert("로그아웃 되었습니다!"); self.location.href='index.php'; }; </script>
로그아웃 시
로그아웃 또는 로그인 하지 않고 회원 전용 페이지 링크 이동 시도 시
'PHP' 카테고리의 다른 글
[PHP] Callback 함수 (0) 2024.02.23 [PHP] Filter (0) 2024.02.23 [PHP] 계산기 (0) 2024.02.22 [PHP] 구구단 (0) 2024.02.22 [PHP] Session (0) 2024.02.22