웹 개발에서 사용자 로그인 및 로그 아웃은 가장 기본적이고 중요한 기능 중 하나입니다. 이 기사는 간단한 예제를 사용하여 PHP 기능을 사용하여 전체 사용자 로그인 및 로그 아웃 프로세스를 구현하는 방법을 자세히 설명합니다.
먼저 사용자의 사용자 이름과 비밀번호를 저장하려면 데이터베이스를 작성해야합니다. 다음은 데이터베이스 및 데이터 테이블을 작성하기위한 예제 SQL 코드입니다.
Database user_info 생성; user_info를 사용하십시오. 테이블 사용자 만들기 ( id int auto_increment 기본 키, Username Varchar (255) NOT NULL, 비밀번호 Varchar (255)는 null이 아닙니다 );
다음으로 사용자가 입력 한 계정 번호와 비밀번호를 수집하려면 로그인 양식 페이지가 필요합니다.
<!DOCTYPE html>
<html>
<head>
<title>로그인</title>
</head>
<body>
<h1>로그인</h1>
<form action="login.php" method="POST">
<label for="username">사용자 이름 :</label>
<input type="text" name="username" id="username" required><br>
<label for="password">비밀번호:</label>
<input type="password" name="password" id="password" required><br>
<input type="submit" value="로그인">
</form>
</body>
</html>
사용자가 양식을 제출하면 로그인 처리 페이지로 이동합니다. 이 페이지에서는 계정 비밀번호를 확인하고 세션을 활성화합니다.
<?php
session_start();
// 양식 데이터를 얻으십시오
$username = $_POST['username'];
$password = $_POST['password'];
// 데이터베이스에 연결하십시오
$mysqli = new mysqli('localhost', 'username', 'password', 'user_info');
// 쿼리 사용자 정보
$query = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$result = $mysqli-> 쿼리 ($ query);
// 로그인 상태를 판단하는 경우 ($ result-> num_rows == 1) {
$ _session [ 'username'] = $ username;
헤더 ( '위치 : 환영 .php');
} 또 다른 {
Echo '유효하지 않은 사용자 이름 또는 비밀번호.';
}
?>
성공적으로 로그인 한 후 환영 페이지로 이동하십시오. 로그인하지 않은 경우 로그인 페이지로 자동 리디렉션됩니다.
<?php
session_start();
if (isset($_SESSION['username'])) {
$username = $_SESSION['username'];
echo "Welcome, $username! ";
echo '<a href="logout.php"> 로그 아웃 ';
} 또 다른 {
헤더 ( '위치 : login.php');
}
?>
사용자가 클릭하여 로그 아웃하면 세션이 지워지고 로그인 페이지로 다시 리디렉션되어야합니다.
<?php
session_start();
session_unset();
session_destroy();
header('Location: login.php');
?>
MySQL 데이터베이스와 결합 된 PHP를 통해 간단한 사용자 로그인 및 로그 아웃 기능을 신속하게 구현할 수 있습니다. 실제 프로젝트에서 암호를 암호화하고 저장하는 것이 좋습니다 (예 : Password_hash () 사용과 같은), 검증 코드 기능 추가 및 준비된 명령문을 사용하여 SQL 주입을 방지하여 시스템 보안을 향상시킵니다.