งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Electronic Commerce Session and Cookies.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Electronic Commerce Session and Cookies."— ใบสำเนางานนำเสนอ:

1 Electronic Commerce Session and Cookies

2 ปัญหาการส่งข้อมูลข้ามเพจ
ให้สร้างเพจขึ้นมา 3 เพจ ชื่อ page1.php,page2.php,page3.php page1 มีฟอร์มที่มีกล่องรับข้อความสำหรับกรอกชื่อผู้ใช้ เมื่อกดปุ่ม submit จะส่งค่าไปเรียก page2.php page2 มีฟอร์มรับหมายเลขบัตรเครดิตของผู้ใช้ เมื่อกดปุ่ม submit จะส่งค่าไปเรียก page3.php page3 แสดงตัวแปรจาก page1 และ page2

3 ตัวแปร Session ตัวอย่างการใช้ Session เช่น Hotmail เมื่อเราลงชื่อเข้าใช้และไปที่เพจต่างๆ ในเว็บเมล์ เซิร์ฟเวอร์จะทราบว่าเราเป็นผู้ใช้คนไหนไม่ว่าจะเปลี่ยนเพจไป จนกว่าเราจะลงชื่อออก ก่อนใช้งานตัวแปร session ต้องเรียกใช้ฟังก์ชัน session_start() ก่อนคำสั่งแสดงผล (echo) และต้องเขียนก่อนเริ่มโค้ด html การอ่านหรือบันทึกค่าตัวแปร session ใช้ตัวแปร $_SESSION เช่น ถ้าต้องการใช้ตัวแปรชื่อ user จะเขียนว่า $_SESSION[“user”] การตรวจสอบว่ามีตัวแปร session อยู่หรือไม่ ใช้ฟังก์ชัน isset() เช่น isset($_SESSION[“user”])

4 PHP Sessions <? session_start(); $_SESSION[“user”] = “u52wns”;
การใช้งาน สร้าง session ชื่อ user มีค่า u52wns <? session_start(); $_SESSION[“user”] = “u52wns”; ?>

5 PHP Sessions <? isset($_SESSION[“user”]) { //welcome message
} else { //login form } ?>

6 ตัวแปร Session จะหายไปเมื่อไร
ผู้ใช้ปิดเว็บเบราเซอร์ ผู้ใช้ไม่ได้ติดต่อกับเซิร์ฟเวอร์เป็นเวลานานจนกระทั่ง session หมดอายุ การกำหนดเวลา session หมดอายุ ให้ไปแก้ไขไฟล์ c:\windows\php.ini เปลี่ยนตัวแปรชื่อ session.gc_maxlifetime ค่าเริ่มต้นคือ 1440 (24 นาที) เรียกใช้ฟังก์ชัน unset() สำหรับทำลาย session แต่ละตัว เช่น unset($_SESSION[“user”] เพื่อลบตัวแปร session ชื่อว่า “user” เรียกใช้ฟังก์ชัน session_destroy() สำหรับทำลาย session ทุกตัว <? session_destroy(); ?>

7 การลบตัวแปร session ทุกตัว
การใช้ฟังก์ชันนี้จะทำการลบไฟล์ session ทุกตัวที่ได้ประกาศไว้ ทางฝั่งเซิร์ฟเวอร์ทั้งหมด เราจะไม่สามารถเรียกใช้ตัวแปร session ได้อีก จึงควรระวังการใช้อย่างยิ่ง session_destroy( )

8 คุกกี้ (Cookie) ตัวแปร session จะถูกลบเมื่อผู้ใช้ปิดเว็บเบราเซอร์ ถ้าต้องการให้ตัวแปรยังคงอยู่หลังจากปิดเบราเซอร์ไปแล้ว ต้องใช้ตัวแปรคุกกี้ Cookies โดยทั่วไปจะใช้สำหรับระบุตัวตนและความมีอยู่ของ users ช่วยให้ users ไม่จำเป็นต้อง login ซ้ำซ้อน เป็นไฟล์ขนาดเล็กที่ถูกสร้างโดยสคริปต์ทางฝั่ง Server แล้วฝังตัวอยู่บนคอมพิวเตอร์ทางฝั่ง Clients ใช้ฟังก์ชัน setcookie() การสร้างตัวแปรคุกกี้ชื่อ user มีค่าเท่ากับ 0 และหมดอายุในอีกสิบนาทีข้างหน้า setcookie(“user”, “0”, time() +600); echo $_COOKIE[“user”];

9 PHP Cookies <? isset($_COOKIE[“user”]) { //welcome message } else {
การตรวจสอบความมีอยู่ของ sessions ใช้คำสั่ง isset <? isset($_COOKIE[“user”]) { //welcome message } else { //login form } ?>

10 PHP Cookies การลบ Cookies
ใช้ฟังก์ชัน setcookie โดยกำหนดให้ expire เป็นเวลาในอดีต setcookie(“user”, “u48wns”, time() );

11 ตัวแปร Session กับ Cookie
Session มีข้อดีคือปลอดภัยสูง เพราะข้อมูลที่ถูกเก็บในตัวแปร session จะเก็บไฟล์ไว้ที่ฝั่งเซิร์ฟเวอร์ คุกกี้มีข้อดีคือ ถึงแม้ผู้ใช้จะปิดเบราเซอร์ไป ตัวแปรคุกกี้ยังคงอยู่ (ถ้ายังไม่หมดอายุ) ข้อเสียคือ ความเป็นส่วนตัว บางเว็บไซต์ใช้คุกกี้ตรวจสอบว่าผู้ใช้เข้าเว็บไซต์ใดบ้าง ใช้ตัวแปร seesion เก็บข้อมูลสำคัญ เช่น รหัสผ่าน ความแตกต่างของ Cookie กับ Session คืออายุของตัวแปร อายุของ Cookie ถูกกำหนดด้วยเวลา อายุของ Session ถูกกำหนดด้วยการทำงานของเบราเซอร์

12 การมีอยู่ของ Session Session เริ่มมีอายุตั้งแต่ถูกประกาศ และจะยังคงมีอยู่ตราบเท่าที่เบราเซอร์ยังคงเปิดใช้งานอยู่ หมายความว่าตัวแปร session จะหมดอายุเมื่อเบราเซอร์ถูกปิด และต้องเป็นการปิดทุกหน้าต่างด้วย (ทั้งที่เกี่ยวข้องและไม่เกี่ยวข้อง)

13 Session ดียังไง เอาข้อมูลของผู้ใช้ไปเก็บไว้ที่ฝั่งเซิร์ฟเวอร์ไว้ทำไม ??? เพราะปัญหาของผู้ใช้ที่คิดว่า cookie ไปละเมิดสิทธิส่วนบุคคล จึงทำให้เบราเซอร์ต่างๆ ต้องให้ผู้ใช้สามารถเลือกได้ว่าจะอนุญาตให้ใช้คุกกี้ได้หรือไม่ ถ้าผู้ใช้กำหนดไม่ยอมรับคุกกี้ ตัวแปรคุกกี้ก็ไม่มีสิทธิ์ไปสร้างไฟล์ไว้ได้ ดังนั้นจึงเกิดปัญหา หากว่าเราต้องการเก็บค่าข้อมูลเพื่อใช้ได้หลายๆ ครั้ง ควรใช้ session

14 แบบฝึกหัด ให้สร้างฟอร์ม user.php เพื่อรับชื่อผู้ใช้และรหัสผ่านจากผู้ใช้ และให้ส่งค่าชื่อผู้ใช้และรหัสผ่านไปยัง check.php check.php ให้ทำการตรวจสอบชื่อผู้ใช้ และรหัสผ่าน หากเหมือนกันให้แสดงชื่อผู้ใช้ และให้นำชื่อผู้ใช้นั้นไปแสดงยังหน้าต่อไปคือ show.php


ดาวน์โหลด ppt Electronic Commerce Session and Cookies.

งานนำเสนอที่คล้ายกัน


Ads by Google