mysqli_stmt_bind_param คือคำสั่งใช้สำหรับผูกค่าของตัวแปรเข้ากับคำสั่ง SQL ที่เตรียมไว้ในลักษณะของ parameters บทความนี้สอนใช้คำสั่ง mysqli_stmt_bind_param ร่วมกับ INSERT INTO เพื่อเพิ่มข้อมูล สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง mysqli_stmt_bind_param คือคำสั่งอะไร
<?php
$c = mysqli_connect("localhost", "root", "", "demo");
$stmt = mysqli_prepare($c, "INSERT INTO color ( name, price ) VALUES (?, ?)");
mysqli_stmt_bind_param($stmt, 'sd', $name, $price);
$name = "black";
$price = 10.95;
mysqli_stmt_execute($stmt);
echo "เพิ่มข้อมูลสำเร็จ ".mysqli_stmt_affected_rows($stmt)." ข้อมูล";
mysqli_close( $c );
?>
ผลลัพธ์
เพิ่มข้อมูลสำเร็จ 1 ข้อมูล
mysqli_stmt_bind_param จากตัวอย่างผูกตัวแปรกับคำสั่ง SQL ของการเพิ่มข้อมูลลงตาราง color ประกอบด้วย 2 columns คือ name และ price โดยในคำสั่ง SQL ใช้อักษร ? แทนที่การผูกตัวแปร และ mysqli_stmt_bind_param มีค่า parameters ดังนี้
1. $stmt คือตัวแปรที่เก็บคำสั่ง mysqli_prepare ของ SQL
2. sd คือตัวย่อจะมีจำนวนเท่ากับตัวแปรที่ผูก คือ s = string (name) และ d = double (price)
3. $name คือตัวแปร name ผูก ? ตัวแรกของคำสั่ง SQL และตัวอักษร s
4. $price คือตัวแปร price ผูก ? ตัวสองของคำสั่ง SQL และตัวอักษร d