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

PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

Moderator: mindphp, ผู้ดูแลกระดาน

abdkode
PHP Super Member
PHP Super Member
โพสต์: 362
ลงทะเบียนเมื่อ: 07/01/2019 9:56 am

การใช้งาน 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 พื้นฐาน

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 11 และ บุคคลทั่วไป 0 ท่าน