สงสัยเหมือนกันครับ คิดว่าน่าจะต้องมีโค้ดบางอย่าง
ของผมเวลาสมาชิกล็อกอินไปแล้ว พอกด Back กลับมา กลายเป็นยังไม่ได้เข้าระบบซะงั้น เพราะติดแคชของหน้า สมาชิกจะต้องกดโหลดหน้าใหม่ ถึงจะมองไม่เห็นเมนูล็อกอิน
ศึกษา code หลายๆตัว ไม่มีบ่งบอกว่า จุดนี้ จุดนั้น ห้าม back ครับ
ระบบสมาชิกเมื่อเข้าสู่ระบบแล้ว จะมีการเก็บ session ไว้ และใน session จะเก็บ ID สมาชิก
ส่วนใหญ่ผมจะเขียนเช็คที่หน้า login หากมี session ID สมาชิก ผมจะให้มัน redirect ไปที่หน้าแรกของระบบสมาชิกครับ
ขอ example ด้วยครับ อยากรู้วิธีครับ ติดมาหลายวันครับ
code login
<?php
require_once('database/connection.php');
if (isset($_POST['submit'])) {
$username = $conn->real_escape_string($_POST['username']);
$password = $conn->real_escape_string($_POST['password']);
date_default_timezone_set('Asia/Bangkok');
$Newtime = date('Y-m-d H:i:s');
$Newtime1 = date('Y-m-d H:i:s');
$sql = "SELECT * FROM `user` WHERE `username` = '".$username."'";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
if(!empty($row)){
if(password_verify($password, $row['password'])){
$update = "UPDATE `user` SET updated_at = '$Newtime', updated_dt = '$Newtime1'
WHERE `username` = '$username'";
$runupdate = $conn->query($update);
$_SESSION['id'] = $row['id'];
$_SESSION['firstname'] = $row['firstname'];
$_SESSION['lastname'] = $row['lastname'];
$_SESSION['username'] = $row['username'];
$_SESSION['password'] = $row['password'];
$_SESSION['image'] = $row['image'];
$_SESSION['created_at'] = $row['created_at'];
$_SESSION['updated_at'] = $Newtime;
$_SESSION['updated_dt'] = $Newtime1;
$_SESSION['status'] = $row['status'];
session_write_close();
if ($_SESSION['status'] == 'admin') {
echo "<script>alert('เข้าสู่ระบบสำเร็จ...'); window.location ='../cmssystem/pages/admin/dashboard/';</script>";
}
if ($_SESSION['status'] == 'member') {
echo "<script>alert('เข้าสู่ระบบสำเร็จ...'); window.location ='../cmssystem/pages/users/dashboard/';</script>";
}
} else {
echo '<script> alert("username หรือ password ไม่ถูกต้อง") </script>';
header('Refresh:0; url=index.php');
}
}else{
echo '<script> alert("ไม่สามารถเข้าสู่ระบบได้โปรดกรอกข้อมูลใหม่อีกครั้ง")</script>';
header("Refresh:0");
}
}
?>