Devdit
 

PHP prepare คือคำสั่งอะไร เขียนยังไง

1.6K

prepare ในภาษา PHP คือคำสั่งที่ใช้สำหรับแยกตัวแปร กับคำสั่ง SQL ออกจากกัน เพื่อป้องกันการโจมตีที่เรียกว่า SQL Injection โดยคำสั่ง prepare จะใช้ร่วมกับ bind_param เพื่อผูกตัวแปรเข้ากับ SQL และรัน SQL ด้วยคำสั่ง execute มีรายละเอียดดังนี้

 

ตัวอย่าง องค์ประกอบของการใช้ prepare ใน PHP

1. prepare คือคำสั่งเตรียมคำสั่ง SQL โดยแยกตัวแปรกับ SQL ออกจากกัน โดยตัวแปรจะถูกแทนที่ด้วย ?

2. bind_param คือคำสั่งใส่ตัวแปรลงไปใน SQL มีลำดับ และอักษรแทนชนิดของตัวแปร เช่น i = int, s = string

3. execute คือคำสั่งรัน SQL ที่เขียนแบบ prepare

 

ตัวอย่าง การใช้ prepare, bind_param และ execute ใน PHP

$stmt = $conn->prepare("INSERT INTO employee (name, salary) VALUES (?, ?)");
$stmt->bind_param("si", $name, $salary);
if ($stmt->execute() === TRUE) {
	...
}

จากตัวอย่างอธิบายได้ดังนี้

1. ใช้คำสั่ง prepare เพื่อเตรียมคำสั่ง SQL เพิ่มข้อมูลลงในตาราง employee ประกอบด้วย name และ salary โดยให้ตัวแปรทั้ง 2 เป็น ?

2. ใช้คำสั่ง bind_param ใส่ตัวแปรลงใน SQL โดยเรียงลำดับคือ s (string) เท่ากับ $name และ i (int) เท่ากับ salary

3. ใช้คำสั่ง execute เพื่อรัน prepare SQL ของ PHP

สรุป PHP prepare คือคำสั่งที่ใช้ป้องกันการโจมตีแบบ SQL Injection หลักการคือแยกตัวแปร และ SQL ออกจากกัน โดยใช้ร่วมกับคำสั่ง bind_param สำหรับใส่ตัวแปรลงใน SQL และ execute เพื่อรัน SQL ที่ใช้งาน prepare

แก้ไข 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ