<?php
session_start();
if(!isset($_SESSION['username'])) {
echo "<script>location.replace('login.php');</script>";
}
else {
$username = $_SESSION['username'];
$name = $_SESSION['name'];
}
?>
<body>
<div class="base">
<h2><?php echo "Hi, $username($name)";?></h2>
<button type="button" class="btn" onclick="location.href='logout.php'">
LOGOUT
</button>
</div>
</body>
세션을 확인해서 로그인이 되어있다면 유저의 아이디와 로그아웃 버튼을 보여주고
로그인이 되어있지 않다면 login.php로 이동합니다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>LOGIN</title>
</head>
<body>
<form method="post" action="check_login.php" class="loginForm">
<h2>Login</h2>
<div class="idForm">
<input type="text" name="id" class="id" placeholder="Username">
</div>
<div class="passForm">
<input type="password" name="pw" class="pw" placeholder="Password">
</div>
<button type="submit" class="btn" onclick="button()">
LOGIN
</button>
<div class="bottomText">
<a href="#">Sign up</a>
</div>
</form>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<?php
session_start();
$host = 'localhost';
$user = '';
$pw = '';
$db_name = '';
$mysqli = new mysqli($host, $user, $pw, $db_name); //db 연결
//login.php에서 입력받은 id, password
$username = $_POST['id'];
$userpass = $_POST['pw'];
$q = "SELECT * FROM member WHERE id = '$username' AND pass = '$userpass'";
$result = $mysqli->query($q);
$row = $result->fetch_array(MYSQLI_ASSOC);
//결과가 존재하면 세션 생성
if ($row != null) {
$_SESSION['username'] = $row['id'];
$_SESSION['name'] = $row['name'];
echo "<script>location.replace('index.php');</script>";
exit;
}
//결과가 존재하지 않으면 로그인 실패
if($row == null){
echo "<script>alert('Invalid username or password')</script>";
echo "<script>location.replace('login.php');</script>";
exit;
}
?>
</body>
login.php에서 입력받은 id, passward을 쿼리문에 넣고 실행해 결과가 존재하면 로그인을 성공하고 세션을 생성한 뒤 index.php로 이동합니다.
결과가 존재하지 않으면 로그인 실패 알림창을 띄우고 다시 로그인 페이지로 이동합니다.
<?php
session_start();
session_destroy();
?>
<script>
alert("You've been logged out");
location.replace('index.php');
</script>
세션을 삭제한 뒤 로그아웃 되었다는 알림을 띄우고 index.php로 이동합니다.
오오 감사합니다..! 나중에 이걸 응용해서 회원가입도 한번 들어봐야겠어요...