Introduction to PHP, MySQL – Special Problem (Database) Choopan Rattanapoka
PHP : include VS require ใน PHP เราสามารถจะเรียกแฟ้มข้อมูลอื่นมา รวมอยู่กับหน้า PHP ปัจจุบันได้ ผ่าน 4 functions include (“ ชื่อไฟล์ ”); include_once (“ ชื่อไฟล์ ”); require (“ ชื่อไฟล์ ”); require_once (“ ชื่อไฟล์ ”); include หมายถึง ให้รวม ถ้าไฟล์ที่จะรวมนั้นไม่มี จะเตือน ออกมา require หมายถึง ต้องการ ถ้าไฟล์ที่จะรวมนั้นไม่มี จะเป็น error once หมายถึง แค่ครั้งเดียวถ้าใน PHP หน้าปัจจุบันมีการ เรียก 2 ครั้ง ครั้งที่ 2 จะไม่สนใจ
Example : include VS require ถ้าไม่มีไฟล์ที่จะ รวม
Example : include VS require ถ้ามีไฟล์ที่ จะรวม xyz.php req.php
การประยุกต์ใช้งาน include, require Leftmenu.html main.phplink.php
ปัญหา : การทำหน้า login เพื่อการเข้าสู่การ จัดการ ตัวอย่าง : ระบบ web mail ขั้นตอนการทำงานปกติ ทำหน้า login.html เพื่อรับ login และ password ทำหน้า verify_login.php เพื่อตรวจสอบ login และ password ถ้า login และ password ถูกต้องใช้สามารถเข้าใช้หน้า main.html ได้ ซึ่งจะมี แสดง ปัญหา ถ้าผู้ใช้รู้ว่าหน้าเวปที่ใช้ดู คือ main.html ผู้ใช้สามารถ เข้าถึงหน้านั้นได้โดยตรง โดยไม่จำเป็นจะต้องใส่ login และ password
วิธีแก้ : session เป็น function ใน PHP ที่จะหน้าที่เก็บ session ของการ เชื่อมต่อ session_start(); ใช้สำหรับสร้าง session session_id(); ค่า ID ของ session นั้นๆ session_destroy(); ใช้สำหรับลบ session เมื่อผู้ใช้เรียก session_start จะมีตัวแปร $_SESSION ให้ใช้ งานได้ ซึ่งทุก PHP ที่ยังอยู่ใน session เดียวกันจะสามารถ เรียกค่าออกมาใช้ได้
session_start() ใช้ในการสร้าง session ใช้ในการต่อ session ( ถ้า session ถูกเปิดไว้แล้ว ) page 2 '; ?> ’; echo $_SESSION['favcolor']; // green echo $_SESSION['animal']; // cat echo date('Y m d H:i:s', $_SESSION['time']); echo ' page 1 '; ?>
session_id() ใช้เพื่อนำค่า ID ของ session นั้นๆ ออกมา ประยุกต์สำหรับการตรวจสอบการเข้าถึงข้อมูล page 2 '; ?> <? // page2.php session_start(); if($_SESSION[‘sessID’] != session_id()) { echo “GO AWAY”; } else { echo 'Welcome to page #2'; echo ' page 2 '; } ?>
session_destroy() and others; Session_destroy(); ใช้เพื่อทำลาย session ที่มีอยู่เพื่อความปลอดภัยหลังจาก การใช้งาน Header functions ใช้สำหรับ redirect ไปหน้าอื่น header(“Location: link.php”); header(“Location:
Exercise จงเขียนเวปเพจโดยมีหลักการคราวๆ ดังนี้ ให้ใช้ include หรือ require เพื่อให้ menu ด้านซ้ายของทุกหน้า เวปเป็นแบบเดียวกันโดยจะมีทั้งหมด 3 link (Login, Secret, และ Logout) login.php รับ login และ password จากหน้าเวป login_check.php นำค่าจากหน้า login.php มาเทียบกับ password ในฐานข้อมูลถ้า ถูกต้องให้แสดง Login correct ถ้าไม่ถูกต้องให้แสดง Login incorrect secret.php ถ้าผ่านการ login อย่างถูกต้องจะแสดงคำว่า This is a secret page. ถ้าไม่ได้ผ่านการ login อย่างถูกต้องจะแสดงคำว่า Please login to see this page.
Exercise ( ต่อ ) logout.php ใช้สำหรับ clear session