ในการเขียนโปรแกรมพีเอชพี เมื่อต้องการป้องกันการใช้ SQL Injection ควรใช้วิธีใด
กใช้ฟังก์ชัน addslashes() เท่านั้นเพื่อป้องกัน
ขใช้ prepared statement หรือ parameterized query เพื่อแยกข้อมูลจากคำสั่ง SQL
คปิดการเข้าถึงฐานข้อมูลทั้งหมด
งตรวจสอบว่าข้อมูลที่ป้อนมามี SQL keyword หรือไม่
เฉลยอธิบาย
การใช้ prepared statement หรือ parameterized query เป็นวิธีที่ปลอดภัยที่สุดในการป้องกัน SQL Injection เนื่องจากแยกข้อมูลจากคำสั่ง SQL ทำให้แม้ผู้ใช้ป้อนข้อมูลที่เป็นคำสั่ง SQL ก็จะไม่ถูกประเมินผลเป็นคำสั่ง ตัวเลือก B เป็นวิธีที่ไม่มีประสิทธิภาพ ตัวเลือก C ใช้ได้บ้างแต่ไม่เพียงพอ ตัวเลือก D ทำให้แอปพลิเคชันใช้งานไม่ได้