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

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: การใช้งาน session ใน php

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

โดย abdkode » 14/01/2019 1:49 pm

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

โค้ด: เลือกทั้งหมด

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

โค้ด: เลือกทั้งหมด

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

โค้ด: เลือกทั้งหมด

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

โค้ด: เลือกทั้งหมด

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

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

ข้างบน