티스토리 뷰
session을 이용한 로그인 페이지 통신 기초
login_main.php에서 아이디를 입력받고 login.php로 넘어간다. 이때 session을 사용하여 값을 계속 유지.전달 하며 login.php에서
로그아웃 버튼을 누르면 session변수를 삭제하고 다시 login_main.php로 이동한다.
만약 login.php에 바로 접근하여 session변수에 아무런 값이 없어도 login_main.php로 이동시킨다.
소스
login_main.php)
<?php session_start(); header("Content-type:text/html;charset=utf-8"); $user_id = $_POST[user_id]; if($user_id){ $_SESSION[user_id] = $user_id; $url = 'login.php'; //echo"<meta http-equiv=\"refresh\" content=\"0; url=$url\">"; header("Location:login.php"); exit; } ?> <script> function check_submit($form){ if(!$form.user_id.value){ alert("ID를 입력하여 주십시오"); $form.user_id.focus(); return false; } return true; } </script> <form name='write' method='post' action='<?=$PHP_SELF?>' onsubmit='return check_submit(this);'> 아이디: <input type='text' name='user_id' value='' /> <input type='submit' value='로그인' /> </form> <?php echo "세션정보: $_SESSION[user_id]"; ?>
login.php)
<?php session_start(); header("Content-type:text/html;charset=utf-8"); $mode = $_POST[mode]; if($mode == 'logout'){ unset($_SESSION[user_id]); header('Location:login_main.php'); exit; } $user_id = $_SESSION[user_id]; if($user_id) echo "로그인된 아이디는 $user_id 입니다."; else { echo "<script> window.alert('정상적인 접근이 아닙니다.'); </script>"; echo "<meta http-equiv=\"refresh\" content=\"0; url=login_main.php\">"; //header('Location:login_main.php'); //헤더가 출력되기전에 어떤 것들도 출력되면 안된다. } ?> <form name="out" method="post" action="<?=$PHP_SELF?>"> <input type='submit' value='로그아웃' /> <input type='hidden' name='mode' value='logout' /> </form>
'■ 백엔드 ■ > PHP' 카테고리의 다른 글
Developer Documentation 번역 : 01.시작하기 (0) | 2014.04.10 |
---|---|
PHPExcel ? (0) | 2014.04.07 |
10. 학생 명단 삭제 (0) | 2014.02.14 |
9. 학생 명단 수정 (0) | 2014.02.14 |
8. 학생 데이터 추가 (0) | 2014.02.14 |
댓글