Devdit
 

PHP ค้นหาสินค้า จากตารางข้อมูล ด้วย WHERE

2K

สอนเขียนภาษา PHP ค้นหาสินค้า จากตารางข้อมูล ด้วยการใช้คำสั่ง WHERE ของ SQL ตัวอย่างแนะนำการสร้างฟอร์มค้นหา และเขียนคำสั่ง SQL เพื่อแสดงข้อมูลตามการค้นหาของผู้ใช้งาน พร้อมแสดงผลลัพธ์ที่หน้าเว็บไซต์ สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง PHP ค้นหาสินค้า จากตารางข้อมูล ด้วย WHERE

<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
    ค้นหาชื่อหนังสือ <input type="text" name="search"><br/>
    <input type="submit" value="ค้นหา">
</form>
<?php
    isset( $_POST['search'] ) ? $search = $_POST['search'] : $search = "";

    if( !empty( $search ) ) {
        $mysqli = mysqli_connect("localhost", "root", "", "db_test");
        mysqli_query( $mysqli, "SET NAMES UTF8" );

        $sql = " SELECT * FROM book WHERE ( name LIKE '%{$search}%' ) ";
        $q = mysqli_query( $mysqli, $sql );
        echo "คำที่ค้นหาคือ {$search} ข้อมูลที่เจอคือ<br/>";
        while( $f = mysqli_fetch_assoc( $q ) ) {
            echo "รหัส ".$f['id']." / ".$f['name']."<br/>";
        }

        mysqli_close( $mysqli );
    }
?>

ผลลัพธ์

คำที่ค้นหาคือ sql ข้อมูลที่เจอคือ
รหัส 3 / MySQL
รหัส 4 / SQL
รหัส 6 / SQL Server
รหัส 9 / SQL

คำอธิบาย

1. PHP ค้นหาสินค้า จากตารางข้อมูล ตัวอย่างสร้างฟอร์ม HTML เมื่อผู้ใช้งานกรอกข้อมูลและกดปุ่มค้นหา ตัวแปร search จะวิ่งเข้ามาทำงานที่ PHP

2. ฝั่ง PHP ใช้คำสั่ง SQL คือ SELECT * FROM book WHERE ( name LIKE '%{$search}%' ) หมายความว่าให้ค้นหาข้อมูลจาก column name ตามคำค้นหาของตัวแปร search

3. ใช้คำสั่ง mysqli_query เพื่อประมวลผลคำสั่ง และดึงข้อมูลด้วยคำสั่ง mysqli_fetch_assoc

4. ใช้ลูป while วนลูปข้อมูล พร้อมกับแสดงข้อมูลที่หน้าเว็บไซต์ด้วยคำสั่ง echo

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