09/10/2018, 22:54
Hỏi về vấn đề logout trong php
em có 1 code admin.php sau Em có dùng session để lưu lại acc khi admin login, chỉ khi nào họ thoát khỏi page thì mới cắt session. Giờ em muốn thực hiện 1 hàm logout để admin khi logged in sẽ có thể click vào logout để thoát. Liệu có hàm logout hay cách gì không ạ? Em không rành về php lắm Mong các anh chỉ
Còn đây là code trang admin.php đó
Còn đây là code trang admin.php đó
Code:
<? session_start(); ?> <? $demologin= 1; // 0: demo , 1: login $passwordlogin = "hoang"; // password dung de dang nhap website $websitename = "admin.php" ; // ten file $textlogin = "Hãy nhập vào password cũa admin"; $titlelogin = "Vui lòng nhập password để đăng nhập"; $passworddemo = "password: <font color="#0000FF">$passwordlogin</font>"; $loginerror = "<font color="#FF0000">Bạn chưa nhập password hay password không đúng</font><br>Hãy quay lại và nhập lại password"; if (!$_POST&&!@$_SESSION['loged']){ echo "<center>"; echo "<br>"; echo "<br>"; echo "<br>"; echo "<br>"; echo "$titlelogin"; echo "<form name="pp" method="post" action="$websitename"> "; //Doi ten pass_website.php cho dung voi ten file cua ban echo "<input type="password" name="pass"> "; echo "<input type="submit" value="Login"> "; echo "</form> "; //---------Begin lua cho password-------- if ($demologin=="0"){ echo "$passworddemo "; } else{ echo "$textlogin" ; } //---------END lua cho password-------- echo "</center>"; } else { if ((@$_POST['pass'] == "$passwordlogin"||@$_SESSION['loged'])) { //Password demo, ban co the thay doi password khac //----------------------BEGIN WEBSITE // Duoc thay doi trong doan nay---------------------------------- $_SESSION['loged'] = true; //----------------------END WEBSITE // Duoc thay doi trong doan nay---------------------------------- } else { $_SESSION['loged'] = false; } } if (@$_SESSION['loged']) { $act = @$_REQUEST['act']; if (!isset($act)) $act = "main"; include "admin/".$act.".php"; } else { echo "<center>"; echo "<br>"; echo "<br>"; echo "<br>"; echo "<br>"; echo "$loginerror"; echo "</center>"; } ?>
Bài liên quan
Khi nhập đúng user & pw thì $_SESSION['loged']= true;
Vậy để logout cậu thêm vào code này
<a href=./?tn=logout>Logout</a>
<?
if($_GET['tn']=='logout')
{
$_SESSION['loged'] = false;
echo <meta http-equiv='Refresh' content='2; url=$PHP_SELF'>";
}
?>
Thử xem sao
edit lại 1 chút thành
if($_GET['tn']=='logout')
{
session_destroy(); // or unset($_SESSION[loged]);
echo <meta http-equiv='Refresh' content='2; url=$PHP_SELF'>";
}
?>
<?php
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();
// Unset all of the session variables.
$_SESSION = array();
// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
// Finally, destroy the session.
session_destroy();
?>
Cái này tui lấy trong PHP Manual