การใช้งาน session ใน php

Post a reply

Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: การใช้งาน session ใน php

การใช้งาน session ใน php

by abdkode » 14/01/2019 1:49 pm

เซสชัน (session) จะแตกต่างจาก cookies คือจะจัดเก็บข้อมูลบนเซิร์ฟเวอร์แทนที่จะเป็นคอมพิวเตอร์ของผู้ใช้ ในเซสชันผู้ใช้ทุกคนจะถูกระบุผ่านหมายเลขเฉพาะที่เรียกว่า session identifier หรือ SID รหัสเซสชันที่ไม่ซ้ำกันนี้จะใช้เพื่อเชื่อมโยงผู้ใช้แต่ละคนกับข้อมูลของตนเองบนเซิร์ฟเวอร์เช่นชื่อ,อีเมล และอื่น ๆ
ก่อนที่จะสามารถเก็บข้อมูลใด ๆ ในตัวแปรเซสชัน เราต้องเริ่มต้นเซสชันก่อน ในการเริ่มต้นเซสชันใหม่เพียงเรียกใช้ session_start() ซึ่งเป็นฟังก์ชัน PHP มันจะสร้างเซสชั่นใหม่และสร้างเซสชั่น ID สำหรับผู้ใช้ที่ไม่ซ้ำกัน
โค้ด PHP ตัวอย่างในการเริ่มต้นเซสชัน

Code: Select all

<?php
// Starting session
session_start();
?>
เราสามารถจัดเก็บข้อมูลเซสชันทั้งหมดป็น key-value ใน $_SESSION[] ซึ่งเป็น Array superglobal ข้อมูลที่เก็บไว้สามารถเข้าถึงได้หลังที่เซสชั่นสร้างขึ้นจนถึงเซสชั่นถูกทำลายน ตัวอย่างสร้างเซสชันใหม่และเก็บตัวแปรเซสชันสองตัว

Code: Select all

<?php
// Starting session
session_start();
 
// Storing session data
$_SESSION["firstname"] = "Peter";
$_SESSION["lastname"] = "Parker";
?>
สำหรับการเข้าถึงข้อมูลเซสชั่นที่เราตั้งไว้ในตัวอย่างก่อนหน้านี้ จากหน้าอื่น ๆ ในโดเมนเว็บเดียวกัน เพียงแค่สร้างเซสชั่นใหม่โดยการเรียก session_start() แล้วส่งkey
ไป ที่$_SESSION เกี่ยวข้องไปยังอาร์เรย์ที่เชื่อมโยงกัน
ดังตังอย่างนี้

Code: Select all

<?php
// Starting session
session_start();
 
// Accessing session data
echo 'Hi, ' . $_SESSION["firstname"] . ' ' . $_SESSION["lastname"];
?>
ซึ่งผลลัพธ์จะออกดังนี้
Hi, Peter Parker
อย่างไรก็ตาม ในการทำลายเซสชั่นทั้งได้อย่างสมบูรณ์นั้น เพียงแค่เรียกฟังก์ชั่น session_destroy() เพียงครั้งเดียวจะทำลายข้อมูลเซสชันทั้งหมด

Code: Select all

<?php
// Starting session
session_start();
 
// Destroying session
session_destroy();
?>
เพียงเท่านี้เราก็สามารถจัดการ session เบื้องต้นได้อย่างง่ายดาย
หวังว่าบทความนี้จะเป็นประโยช์ต่อผู้อ่านน่ะครับ

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : PHP Programming
-สอนการใช้งาน PHP
-ถาม-ตอบ การใช้งาน php
-บทเรียน php พื้นฐาน

Top