PHP 세션을 이용한 커스텀 로그인 인증 로직 구현 방법
페이지 정보

본문
개요
로그인 입력 폼에서 전달받은 아이디와 비밀번호를 데이터베이스 정보와 비교하고, 일치할 경우 세션을 생성하여 인증 상태를 유지하는 로그인 처리 페이지(login_ok.php) 구현 방법을 살펴봅니다.
단계별 구현 순서
로그인 처리 페이지를 구현하기 위해 준비해야 할 작업 순서와 확인 사항입니다.
- 세션 시작 및 이전 페이지로부터 입력값 수신
- mysqli_connect 함수를 이용한 데이터베이스 연결 설정
- 관리자 테이블에서 아이디와 비밀번호 조회
- 조회 결과에 따른 세션 변수 할당 및 페이지 이동 처리
데이터베이스 연결 및 입력값 처리
세션을 시작한 후 이전 페이지에서 전달된 아이디와 비밀번호를 받아옵니다. mysqli_connect 함수를 이용하여 데이터베이스에 연결하고 입력된 정보와 일치하는 관리자 계정 데이터를 조회합니다.
session_start();
$id = $_POST["id"];
$pw = $_POST["pw"];
$mysql_host = "localhost";
$mysql_user = "디비 아이디";
$mysql_password = "디비 비밀번호";
$mysql_db = "데이타베이스";
$dbconn = mysqli_connect($mysql_host, $mysql_user, $mysql_password, $mysql_db);
$sql = "select * from hp_admin where admin_id='{$id}' and admin_pw='{$pw}'";
$result = mysqli_query($dbconn, $sql);
$data = mysqli_fetch_array($result);
$isset_check = $data["admin_id"];
세션 생성 및 결과 분기
조회된 결과가 존재하면 세션 변수에 관리자 아이디와 비밀번호를 할당한 뒤 메인 페이지로 이동합니다. 정보가 일치하지 않으면 경고창을 띄우고 이전 페이지로 돌아갑니다.
if(isset($isset_check)) {
$_SESSION['adminid'] = $data["admin_id"];
$_SESSION['adminpw'] = $data["admin_pw"];
echo ("<meta http-equiv='Refresh' content='0; URL=main.php'>");
} else {
echo "<script type='text/javascript'>alert('로그인정보가 옳지 않습니다.');history.go(-1);</script>";
}
주의사항 및 복구 안내
그누보드 5 환경에서 공통 파일을 연동하여 사용할 때는 common.php 경로 설정 및 관련 설정 상수를 확인해야 합니다. 로그인 로직 수정 전에는 기존 파일을 백업하여 예기치 않은 오류 발생 시 즉시 원상태로 복구할 수 있도록 준비해야 합니다.
함께 보면 좋은 글
- 이전글그누보드5 소셜 로그인 플러그인 설치 및 설정 방법 26.09.14
- 다음글그누보드5 게시판 읽기 페이지 view.skin.php에서 여분 필드 wr_1 wr_2 wr_3 출력하는 방법 26.09.14
댓글목록
등록된 댓글이 없습니다.