ล่าสุดการพัฒนาเว็บบทเรียน
×

PHP เกี่ยวกับการสอน

PHP บ้าน PHP แนะนำ PHP ติดตั้ง PHP วากยสัมพันธ์ PHP ตัวแปร PHP Echo / พิมพ์ PHP ชนิดข้อมูล PHP เงื่อนไข PHP ค่าคงที่ PHP ผู้ประกอบการ PHP If...Else...Elseif PHP Switch PHP ในขณะที่ลูป PHP สำหรับลูป PHP ฟังก์ชั่น PHP แถว PHP เรียงลำดับอาร์เรย์ PHP Superglobals

PHP การจัดการ

PHP ฟอร์ม การจัดการ PHP ฟอร์ม การตรวจสอบ PHP ฟอร์ม จำเป็นต้องใช้ PHP ฟอร์ม URL/E-mail PHP ฟอร์ม สมบูรณ์

PHP สูง

PHP อาร์เรย์หลายมิติ PHP วันและเวลา PHP ประกอบด้วย PHP ไฟล์ การจัดการ PHP ไฟล์ เปิด / อ่าน PHP ไฟล์ สร้าง / เขียน PHP ไฟล์ อัปโหลด PHP Cookies PHP Sessions PHP ฟิลเตอร์ PHP Filters สูง PHP ผิดพลาด การจัดการ PHP ข้อยกเว้น

MySQL Database

MySQL ฐานข้อมูล MySQL สัมพันธ์ MySQL Create DB MySQL Create ตาราง MySQL Insert Data MySQL รับ ID เข้าครั้งสุดท้าย MySQL ใส่หลาย MySQL Prepared MySQL Select Data MySQL Delete Data MySQL Update Data MySQL Limit Data

PHP - XML

PHP XML parsers PHP SimpleXML Parser PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX แนะนำ AJAX PHP AJAX ฐานข้อมูล AJAX XML AJAX ค้นหาสด AJAX RSS Reader AJAX โพลล์

PHP Examples

PHP ตัวอย่าง PHP ทดสอบ PHP ใบรับรอง

PHP การอ้างอิง

PHP แถว PHP ปฏิทิน PHP วันที่ PHP ไดเรกทอรี PHP ผิดพลาด PHP ระบบแฟ้ม PHP กรอง PHP FTP PHP HTTP PHP Libxml PHP จดหมาย PHP คณิตศาสตร์ PHP อื่น ๆ PHP MySQLi PHP SimpleXML PHP เชือก PHP XML PHP Zip PHP ช่วงเวลา

 

PHP 5 ครั้ง


เซสชั่นเป็นวิธีการในการจัดเก็บข้อมูล (in variables) ที่จะนำมาใช้ในหลาย ๆ หน้า

ซึ่งแตกต่างจากคุกกี้ข้อมูลที่ไม่ได้เก็บไว้บนคอมพิวเตอร์ของผู้ใช้


PHP ที่เซสชันคืออะไร?

เมื่อคุณทำงานกับโปรแกรมที่จะเปิดทำการเปลี่ยนแปลงบางอย่างและจากนั้นคุณปิดมัน นี้เป็นเหมือนเซสชัน คอมพิวเตอร์รู้ว่าคุณเป็นใคร มันรู้ว่าเมื่อคุณเริ่มโปรแกรมประยุกต์และเมื่อคุณจบ แต่บนอินเทอร์เน็ตมีปัญหาหนึ่งคือ: เว็บเซิร์ฟเวอร์ไม่ทราบว่าคุณเป็นใครหรือสิ่งที่คุณทำเพราะอยู่ HTTP ไม่รักษาสถานะ

ตัวแปรเซสชั่นการแก้ปัญหานี้โดยการจัดเก็บข้อมูลของผู้ใช้ที่จะนำมาใช้ในหลาย ๆ หน้า (eg username, favorite color, etc) ) โดยค่าเริ่มต้นตัวแปรเซสชั่นมีอายุจนถึงผู้ใช้ปิดเบราว์เซอร์

ดังนั้น; ตัวแปรเซสชั่นเก็บข้อมูลเกี่ยวกับผู้ใช้หนึ่งเดียวและมีอยู่ในทุกหน้าในโปรแกรมประยุกต์หนึ่ง

เคล็ดลับ: หากคุณจำเป็นต้องมีการจัดเก็บข้อมูลถาวรคุณอาจต้องการที่จะเก็บข้อมูลใน ฐานข้อมูล


เริ่ม PHP เซสชัน

เซสชั่นจะเริ่มต้นด้วยการ session_start() ฟังก์ชั่น

ตัวแปรเซสชั่นถูกกำหนดด้วยตัวแปรส่วนกลาง PHP: $ _SESSION

ตอนนี้ขอสร้างหน้าใหม่ที่เรียกว่า "demo_session1.php" ในหน้านี้เราเริ่มเซสชัน PHP ใหม่และตั้งค่าตัวแปรเซสชั่นบางอย่าง

ตัวอย่าง

<?php
// Start the session
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Set session variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

Note: session_start() ฟังก์ชั่นจะต้องเป็นสิ่งแรกในเอกสารของคุณ ก่อนที่จะแท็ก HTML ใด ๆ


รับ PHP เซสชันค่าตัวแปร

ต่อไปเราจะสร้างเพจที่เรียกว่า "demo_session2.php" จากหน้านี้เราจะเข้าถึงข้อมูลเซสชั่นที่เราตั้งอยู่บนหน้าแรก ("demo_session1.php")

ขอให้สังเกตว่าเซสชั่นตัวแปรที่ยังไม่ได้ผ่านการเป็นรายบุคคลไปยังหน้าใหม่ในแต่ละแทนพวกเขาจะถูกดึงจากการที่เราเปิดที่จุดเริ่มต้นของแต่ละหน้า ( session_start() )

นอกจากนี้ยังสังเกตเห็นว่าค่าตัวแปรเซสชั่นทั้งหมดจะถูกเก็บไว้ในโลก $ _SESSION ตัวแปร:

ตัวอย่าง

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Echo session variables that were set on previous page
echo "Favorite color is " . $_SESSION["favcolor"] . ".<br>";
echo "Favorite animal is " . $_SESSION["favanimal"] . ".";
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

วิธีที่จะแสดงทุกค่าตัวแปรเซสชั่นสำหรับเซสชันของผู้ใช้ก็คือการใช้รหัสต่อไปนี้:

ตัวอย่าง

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
print_r($_SESSION);
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

มันทำงานอย่างไร มันจะรู้ว่ามันเป็นฉัน?

การประชุมส่วนใหญ่ตั้งใช้งานที่สำคัญในคอมพิวเตอร์ของผู้ใช้ที่มีลักษณะบางอย่างเช่นนี้ 765487cf34ert8dede5a562e4f3a7e12 จากนั้นเมื่อเซสชั่นที่มีการเปิดในหน้าอื่นจะสแกนเครื่องคอมพิวเตอร์สำหรับการใช้งานที่สำคัญ หากมีการแข่งขันมันเข้าถึงเซสชั่นว่าถ้าไม่ก็จะเริ่มเซสชันใหม่


ปรับเปลี่ยนตัวแปร PHP เซสชัน

ในการเปลี่ยนตัวแปรเซสชั่นเพียงเขียนทับมัน:

ตัวอย่าง

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// to change a session variable, just overwrite it
$_SESSION["favcolor"] = "yellow";
print_r($_SESSION);
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

ทำลาย PHP เซสชัน

ในการลบตัวแปรเซสชั่นทั่วโลกทั้งหมดและทำลายเซสชั่นการใช้งาน session_unset() และ session_destroy() :

ตัวอย่าง

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// remove all session variables
session_unset();

// destroy the session
session_destroy();
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»