square-right$_POST

กรวิชญ์ บุญชู 630710836

$_POST

เป็นหนึ่งใน superglobals ของ PHP ที่ใช้สำหรับรับข้อมูลที่ถูกส่งมาจากฟอร์ม HTML หรือคำขอ HTTP POST

เนื้อหา

  • $_POST เป็นอาเรย์ที่ใช้เก็บค่าตัวแปรที่ส่งมาจากฟอร์มที่ใช้วิธี POST

  • ข้อมูลที่ส่งผ่าน $_POST จะไม่แสดงใน URL ซึ่งทำให้มีความปลอดภัยมากกว่าการใช้ $_GET

  • สามารถใช้สำหรับการส่งข้อมูลที่ละเอียด เช่น ข้อมูลจากฟอร์มสมัครสมาชิกหรือข้อมูลการเข้าสู่ระบบ

$_POST ประกอบด้วยอาเรย์ของตัวแปรที่ได้รับผ่านวิธี HTTP POST มีสองวิธีหลักในการส่งตัวแปรผ่านวิธี HTTP POST:

  1. ฟอร์ม HTML

  2. คำขอ HTTP ของ JavaScript

$_POST เป็นหนึ่งใน superglobals ใน PHP ที่ใช้สำหรับรับข้อมูลที่ส่งมาจากฟอร์ม HTML ผ่าน HTTP POST method ข้อมูลที่ส่งผ่าน $_POST จะไม่แสดงใน URL ซึ่งช่วยให้ข้อมูลมีความปลอดภัยมากกว่า $_GET

การใช้งาน

  • การรับค่าจากฟอร์ม: $_POST ถูกใช้เพื่อเก็บค่าที่ผู้ใช้กรอกในฟอร์ม HTML โดยสามารถเข้าถึงค่าเหล่านั้นผ่านชื่อของฟิลด์ที่ถูกส่งมา

  • การส่งข้อมูลที่ละเอียด: เหมาะสำหรับการส่งข้อมูลที่ละเอียด เช่น รหัสผ่าน, ข้อมูลส่วนตัว หรือข้อมูลจากฟอร์มสมัครสมาชิก

ตัวอย่างโค้ด

ฟอร์ม HTML

<!DOCTYPE html>
<html>
<body>

<form method="POST" action="process.php">
    ชื่อ: <input type="text" name="fname">
    อีเมล: <input type="email" name="email">
    <input type="submit" value="ส่ง">
</form>

</body>
</html>

ไฟล์ PHP

การทำงานของโค้ด

  • ฟอร์ม HTML จะส่งข้อมูลไปยัง process.php เมื่อผู้ใช้กรอกชื่อและอีเมลแล้วคลิก "ส่ง"

  • ใน process.php, เราจะตรวจสอบว่าคำขอเป็นแบบ POST หรือไม่

  • ข้อมูลที่ส่งมาจะถูกเก็บในตัวแปร $_POST, ซึ่งเราสามารถเข้าถึงค่าต่างๆ เช่น $_POST['fname'] และ $_POST['email']

  • เราจะใช้ htmlspecialchars เพื่อป้องกันการโจมตี XSS

  • โค้ดจะแสดงชื่อและอีเมลที่ผู้ใช้กรอก

ฟังก์ชัน JavaScript

การเปรียบเทียบระหว่างภาษา PHP กับภาษา JavaScript ด้วย $_POST

การเปรียบเทียบนี้จะพิจารณาวิธีการทำงานของการส่งข้อมูลผ่าน POST ในทั้งสองภาษา รวมถึงลักษณะการใช้งานที่เหมาะสม

คุณสมบัติ
PHP
JavaScript

การใช้งาน $_POST

ใช้เพื่อรับข้อมูลจากฟอร์ม HTML ที่ส่งโดยใช้ HTTP POST method

ไม่มี $_POST แต่สามารถส่งข้อมูลด้วย AJAX หรือ Fetch API โดยใช้ POST

การประมวลผล

ทำงานบนเซิร์ฟเวอร์ รับค่าจากฟอร์มใน server-side

ทำงานในเบราว์เซอร์ของผู้ใช้ ส่งข้อมูลไปยังเซิร์ฟเวอร์

การเข้าถึงข้อมูล

ใช้ $_POST['key'] เพื่อเข้าถึงค่าที่ส่งมา

ใช้ fetch หรือ XMLHttpRequest เพื่อส่งข้อมูลแบบ POST

การแสดงผล

สามารถแสดงผลกลับไปที่ผู้ใช้ได้ใน response

สามารถใช้ DOM เพื่ออัปเดตหน้าตาเว็บโดยตรง

การจัดการความปลอดภัย

ควรใช้ฟังก์ชันเช่น htmlspecialchars เพื่อป้องกัน XSS

ควรมีการตรวจสอบข้อมูลก่อนส่งไปยังเซิร์ฟเวอร์

ตัวอย่างการใช้งาน

การจัดการฟอร์มสมัครสมาชิก

การส่งข้อมูลแบบ AJAX

ตัวอย่างการใช้งานใน PHP

ตัวอย่างการใช้งานใน JavaScript

แหล่งที่มาอ้างอิง

  1. PHP Manual - $_POST: PHP.net. (n.d.). Retrieved from https://www.php.net/manual/en/reserved.variables.post.phparrow-up-right

  2. W3Schools - $_POST: W3Schools. (n.d.). Retrieved from https://www.w3schools.com/php/php_superglobals_post.asparrow-up-right

  3. JavaScript Info: JavaScript.info. (n.d.). Retrieved from https://javascript.info/arrow-up-right

Last updated