โค้ด search PHP MySQLi ค้นข้อมูลจากฐานข้อมูล บทความนี้สอนสร้างฟอร์ม HTML เพื่อให้ผู้ใช้งานใส่คำค้นหาเพื่อ search ข้อมูลจากฐานข้อมูล ด้วยภาษา PHP ร่วมกับ MySQLi สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง ข้อมูลในตาราง book
+---------+-------------+------------+
| book_id | book_name | book_price |
+---------+-------------+------------+
| 1 | PHP & MySQL | 200.00 |
| 2 | SQL Server | 220.00 |
| 3 | NoSQL | 280.00 |
| 4 | MS Access | 250.00 |
+---------+-------------+------------+
ตัวอย่าง โค้ด search PHP MySQLi ค้นข้อมูลจากฐานข้อมูล
<form action="<?=$_SERVER['PHP_SELF'];?>" method="post">
กรอกคำค้นหา <input type="text" name="search" placeholder="กรอกคำค้นหา">
<input type="submit" value="ค้นหา">
</form>
<?php
isset( $_POST['search'] ) ? $search = $_POST['search'] : $search = "";
if( !empty( $search ) ) {
$c = mysqli_connect( "localhost", "root", "", "demo" );
mysqli_query( $c, "SET NAMES UTF8" );
echo "<table width='50%' border='1'><tr><td>ลำดับ</td><td>ชื่อหนังสือ</td><td>ราคา</td></tr>";
$sql = " SELECT * FROM book WHERE ( book_name LIKE '%".$search."%' ) ";
$q = mysqli_query( $c, $sql );
$no = 1;
while( $f = mysqli_fetch_assoc( $q ) ) {
echo "
<tr>
<td>".$no."</td>
<td>".$f['book_name']."</td>
<td>".$f['book_price']."</td>
</tr>
";
$no++;
}
echo "</table>";
mysqli_close( $c );
}
?>
โค้ด search PHP MySQLi รับค่าจากผู้ใช้งานผ่าน TextBox และเข้าไปดึงข้อมูลจาก MySQL มีลำดับขั้นตอนดังนี้
1. สร้างฟอร์มพร้อมช่อง TextBox กำหนดตัวแปรชื่อ search และปุ่มค้นหาแบบ submit
2. ที่ PHP รับค่าตัวแปร search กรณีตัวแปรมีข้อมูลให้ทำการเชื่อมต่อฐานข้อมูล MySQL ด้วย mysqli_conenct
3. เขียนคำสั่ง SQL โดยดึงข้อมูลจากตาราง book ด้วยเงื่อนไข WHERE ( book_name LIKE '%".$search."%' )
4. ประมวลผลคำสั่ง SQL ด้วย mysqli_query และดึงข้อมูลด้วย mysqli_fetch_asssoc
5. ใช้ while ลูปวนข้อมูลแสดงผลผ่านแท็ก table ของ HTML ด้วย column book_name และ book_price