A-AA+then

session ครับ

1,821
ผมสงสัยว่าทำไมเวลาเรา login ไปน่ะครับ แล้วทีน้ทำการ log out เมื่อผม กดที่ back ก้ยังสามารถกลับไปที่หน้าเดิมได้อีก แล้วค่า session ก้ยังอยู่


logout.php

<?
print $t1=$_REQUEST[t1];
print $a1=$_REQUEST[a1];
print $n=$_REQUEST[n];
@session_start();
@session_unregister(username);
@session_destroy();
@session_unset();
echo "<script language=\"javascript\" type=\"text/javascript\">parent.location.href='index.php';</script>";

?>


คือผมพยายามทำให้ค่าที่ส่งมา  logout เป็นค่าอื่นแล้ว แต่ back กลับ ค่าก้ยังอยู่เหมือนเดิมคับ

สุดท้ายน่ะครับ echo "<script language=\"javascript\" type=\"text/javascript\">parent.location.href='index.php';</script>";
===ทำไม พอรันใน fire fox แล้วสามารถ back กลับ ได้ครับ แต่ใน IE ไม่สามารถ back กลับได้ครับ

พอจะมี code แนะนำเวลา logout ไม่สามารถ back กลับไปหน้าที่แล้ว บ้างครับ ผมขอหน่อยครับ ขอบคุณล่วงหน้าครับ

1 ความคิดเห็น

ผมไม่รู้ว่าเงื่อนไขที่ทดสอบเป็นยังไงแต่สรุปเท่าที่เจอบ่อยๆ ก็

1. การทำลาย session ต้องใช้ unset($_SESSION[session_name]);
2. การใช้งาน session ต้องใช้ตัวแปรรับค่าจาก session มาใช้งานด้วยคำสั่ง $session_name = $_SESSION[session_name];
3. ถ้ามีการใช้ฟอร์ม บางที่ค่าที่เห็นอาจมาจากการจดจำค่าของฟอร์มก็ได้ ให้ยกเลิกการจำค่าของ Browser หรือ และ ให้เคลี้ยร์ค่ารหัสผ่านที่บันทึกไว้ให้หมด

ปัญหาข้อที่ 1 และ 2 มักเป็นเรื่องเข้าใจผิดกัน ซึ่งส่วนใหญ่จะเป็นที่ความเคยชินกับการเขียนแบบเก่าๆ ดังนั้นเพื่อให้เข้ากับแนวการเขียนแบบใหม่ๆ ก็คงตับปรับวิธีคิดวิธีเขียนกันบ้างแหละครับ
1
^