Đăng nhập với session trong PHP
Script đăng nhập trong PHP được sử dụng để cung cấp trình xác nhận cho các Webpage của chúng ta. Script này thực thi sau khi đệ trình nút Login từ người dùng.
Login Page trong PHP
Login Page nên làm việc dựa trên session. Nếu người sử dụng đóng session, nó sẽ xóa session data đó.
<?php ob_start(); session_start(); ?> <? // error_reporting(E_ALL); // ini_set("display_errors", 1); ?> <html lang="vi"> <head> <title>Vietjack.com</title> <link href="css/bootstrap.min.css" rel="stylesheet"> <style> body { padding-top: 40px; padding-bottom: 40px; background-color: #ADABAB; } .form-signin { max-width: 330px; padding: 15px; margin: 0 auto; color: #017572; } .form-signin .form-signin-heading, .form-signin .checkbox { margin-bottom: 10px; } .form-signin .checkbox { font-weight: normal; } .form-signin .form-control { position: relative; height: auto; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 10px; font-size: 16px; } .form-signin .form-control:focus { z-index: 2; } .form-signin input[type="email"] { margin-bottom: -1px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; border-color:#017572; } .form-signin input[type="password"] { margin-bottom: 10px; border-top-left-radius: 0; border-top-right-radius: 0; border-color:#017572; } h2{ text-align: center; color: #017572; } </style> </head> <body> <h2>Nhập tên người dùng và mật khẩu</h2> <div class="container form-signin"> <?php $msg = ''; if (isset($_POST['login']) && !empty($_POST['username']) && !empty($_POST['password'])) { if ($_POST['username'] == 'hoctv' && $_POST['password'] == '1234') { $_SESSION['valid'] = true; $_SESSION['timeout'] = time(); $_SESSION['username'] = 'hoctv'; echo 'Bạn đã nhập tên người dùng và mật khẩu hợp lệ'; } else { $msg = 'Tên người dùng và mật khẩu sai'; } } ?> </div> <!-- /container --> <div class="container"> <form class="form-signin" role="form" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="post"> <h4 class="form-signin-heading"><?php echo $msg; ?></h4> <input type="text" class="form-control" name="username" placeholder="username = hoctv" required autofocus></br> <input type="password" class="form-control" name="password" placeholder="password = 1234" required> <button class="btn btn-lg btn-primary btn-block" type="submit" name="login">Login</button> </form> Click chuột vào đây để xóa <a href="logout.php" tite="Logout">Session. </div> </body> </html>
Logout.php
File này sẽ xóa session data.
<?php session_start(); unset($_SESSION["username"]); unset($_SESSION["password"]); echo 'Bạn đã xóa session'; header('Refresh: 2; URL=login.php'); ?>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả: