🔹 เกริ่นนำ
เมื่อพูดถึงการสร้างฟอร์มใน Laravel ไม่ว่าจะเป็นแบบสมัครสมาชิก ล็อกอิน หรือแบบฟอร์มติดต่อ สิ่งสำคัญที่ไม่ควรมองข้ามคือเรื่องของความปลอดภัยจากการโจมตีแบบ CSRF (Cross-Site Request Forgery) ซึ่ง Laravel มีระบบป้องกันนี้ติดตั้งมาให้อัตโนมัติผ่าน CSRF Token
ในบทเรียนนี้ คุณจะได้เรียนรู้การสร้างฟอร์มแบบง่าย ๆ ด้วย Blade Template และการใช้งาน CSRF Token ที่ Laravel สร้างให้โดยอัตโนมัติ พร้อมทั้งอธิบายเหตุผลว่าทำไมจึงต้องมี และวิธีตรวจสอบว่าฟอร์มของคุณปลอดภัยจากการถูกโจมตีหรือไม่
🔸 ตัวอย่างการสร้างฟอร์มใน Blade
<form action="/submit" method="POST">
@csrf
<label for="name">Name:</label>
<input type="text" name="name" id="name">
<label for="email">Email:</label>
<input type="email" name="email" id="email">
<button type="submit">Send</button>
</form>
💡 คำสั่ง
@csrf
จะเพิ่ม hidden input ที่มี token พิเศษซึ่ง Laravel จะตรวจสอบในฝั่งเซิร์ฟเวอร์ ถ้าไม่มีหรือไม่ถูกต้อง Laravel จะไม่ประมวลผล request นั้น
🧪 การปิดการตรวจสอบ (ใช้เฉพาะในกรณีพิเศษ)
// ใน App\Http\Middleware\VerifyCsrfToken.php
protected $except = [
'/webhook/line',
];