WeGievU.Com
WeGievU.Com
WeGievU.Com
User :
Pass :
  WeGievU.Com
WeGievU.Com
WeGievU.Com
» E-Learning Room > Asp
WeGievU.Com
ทำความรู้จักและเล่นกับ Session 
( 371  Views )

Mon 01-09-2551 Time 12:30
Category: Asp/ WeGievU.Com 0Comments
WeGievU.Com
Session คืออะไร?
จะตอบแบบง่ายๆ ก็คือ การเก็บค่า จาก Web Server ลงในหน่วยความจำของเครื่อง Client แต่ละราย server จะกำหนดเวลาและติดตามการใช้งานของเครื่อง Client

เพื่อให้เข้าใจการเขียนแอพพลิเคชั่นด้วย asp มากขึ้น เราควรจะทำความรู้จักกับออบเจ็กต์ Application และ Session กันเสียหน่อยนะครับ เพื่อเป็นประโยชน์ในการนำไปประยุกต์ใช้ในงานของเราได้ดียิ่งขึ้น
Application เป็นออบเจ็กต์ที่เกิดขึ้น เมื่อเราเริ่มรัน Web application และจะยังคงอยู่ จนกระทั่งเราปิด Web application หรือปิดเครื่อง Server ครับ ออบเจ็กต์ Application นี้ใช้ในการเก็บค่าของระบบ ซึ่งหากมีการเพิ่มหรือลบค่าบางตัว เราจะต้องทำการ Restart Server เพื่อเป็นการเริ่มต้นสร้างออบเจ็กต์ Application ใหม่Session เป็นออบเจ็กต์ที่เกิดขึ้นเมื่อมี User เข้ามาติดต่อ โดยที่แต่ละ User จะมี 1 Session และแต่ละ Session จะไม่ยุ่งเกี่ยวกัน Session จะยังคงอยู่ไม่ว่า User จะเปลี่ยนไปดูเว็บหน้าใดและจะสิ้นสุดเมื่อ User คนนั้นไม่ได้ติดต่อกับ Server เป็นระยะเวลาหนึ่ง (Time out) หรือมีการเรียกใช้เมดถอด Abandon ซึ่งเป็นเมดถอดในการลบ Session
ตัวอย่างการใช้งาน Session ในการตรวจสอบสถานะของสมาชิกว่า มีการล็อกอินเข้ามาในระบบหรือยัง (ให้ลองสร้างไฟล์ไว้ใน c:\inetpub\wwwroot หรือที่โฟลเดอร์ใดๆ ก็ตามที่คุณได้ทำการเซ็ตให้เป็น Home Directory นะครับ)

<%
Session("ismblogin") = true
if Session("ismblogin") = true then
Response.write "ยินดีต้อนรับสมาชิกเข้าสู่ระบบครับ"
else
Response.write "ยินดีต้อนรับผู้มาเยือนครับ"
End if
%>


SessionID
แสดงหมายเลขของ Session ซึ่งเลข ID แต่ละตัวจะไม่ซ้ำกันใช้เป็นเลขอ้างอิงของแต่ละ User

รูปแบบ

Session.SessionID

ตัวอย่าง

<%=Session.SessionID%>
*********************************************************************************************************

รูปแบบการใช้งานอื่น ๆ

การสร้าง session
Session("session-name")=value

ตัวอย่าง
<%Session("name")="นายอภิชาติ เกาะดี " %>

*********************************************************************************************************

การกำหนดเวลา ของ session
Session.TimeOut = Time ( Time เป็นนาที )

ตัวอย่าง
<%Session.TimeOut=20%>

*********************************************************************************************************

การลบตัวแปร Sessoion ที่เราสร้างขึ้นมา
Session.Contents.Remove("session-name")

ตัวอย่าง
<% Session.Contents.Remove("name")( จะลบเฉพาะตัวแปร Name )
Session.Contents.RemoveAll (จะลบตัวแปรทั้งหมด )%>

*********************************************************************************************************

การล้างข้อมูลใน Session ทั้งหมด
Session.Abandon ( จะล้างข้อมูลใน session ทั้งหมด )

ตัวอย่าง
Session.Abandon

*********************************************************************************************************

การอ่านค่าจาก Session
var-name=Session("session-name")

ตัวอย่าง
<%name=Session("name")%>
*********************************************************************************************************

หากต้องการแสดงค่าของ session ออกมา
=session("session-name")

ตัวอย่าง

<%=Session("name")%>
*********************************************************************************************************

เดี๋ยวจะงงกันไปใหญ่มาดู ตัวอย่างดีกว่านะครับ

******************************************
ไฟล์ที่ 1 ชื่อว่า test_session1.asp
<html>
<head>
<title>
Gangza</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
<%
Session.Timeout=20
Session("url")="http://www.wegiveu.com"
Session("name")="Gangza"
%>
<a href="test_session2.asp">ตรวจสอบค่า Session</a>
</body>
</html>

******************************************
ไฟล์ที่ 2ชื่อว่า test_session2.asp
<html>
<head>
<title>
Gangza</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
ค่าใน Session Url คือ <%=Session("url")%><br>
ค่าใน Session name คือ <%=
Session("name")%><br><br>

<a href="test_session3.asp">ลบค่า Session</a><br>
<a href="test_session1.asp">ตั้งค่าใหม่ Session</a><br>
</body>
</html>

******************************************
ไฟล์ที่ 3ชื่อว่า test_session3.asp
<html>
<head>
<title>
Gangza</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
<%

Session.Abandon
%>

<a href="test_session2.asp">เช็คค่า Session</a><br>
<a href="test_session1.asp">ตั้งค่าใหม่ Session</a><br>

</body>
</html>

******************************************
ลองดัดแปลงการใช้ดูเอานะครับ


แสดงความคิดเห็น “ ทำความรู้จักและเล่นกับ Session   Comment”
WeGievU.Com
WeGievU.Com


Learning
| Tip | Knowledge
Copyright (c) 2010 by Wegiveu.com Team ( We Give Everything )