Devdit
 

PHP ดึงข้อมูลจากฐานข้อมูล MySQL และแสดงที่หน้าเว็บไซต์

5.7K

บทความนี้สอนวิธีการดึงข้อมูลจากฐานข้อมูล MySQL มาแสดงที่หน้าเว็บไซต์ด้วยภาษา PHP โดยใช้ชุดคำสั่ง mysqli มีขั้นตอนวิธีการเขียนโปรแกรมดังนี้

 

ตัวอย่าง PHP ดึงข้อมูลจากฐานข้อมูล MySQL และแสดงที่หน้าเว็บไซต์

1. สร้างฐานข้อมูล (Database) ชื่อ db_example

 

2. รันคำสั่ง SQL ด้านล่างเพื่อสร้างตารางข้อมูลชื่อ fruit และเพิ่มข้อมูลเข้าไปในตารางดังกล่าวทั้งหมด 5 ข้อมูล

CREATE TABLE fruit (
id int(11) NOT NULL AUTO_INCREMENT,
title char(255) NOT NULL,
price int(11) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO fruit (id, title, price) VALUES
(NULL, 'orange', 50),
(NULL, 'apple', 60),
(NULL, 'banana', 40),
(NULL, 'mango', 70),
(NULL, 'berry', 80)

 

3. เขียนคำสั่ง PHP เชื่อมต่อฐานข้อมูล MySQL

$conn = mysqli_connect("localhost", "root", "", "db_example");
mysqli_query( $conn, "SET NAMES UTF8" );

 

4. สร้างชุดคำสั่ง SELECT สำหรับดึงข้อมูลจากตาราง fruit มาแสดงที่หน้าเว็บไซต์

$sql = " SELECT * FROM fruit ";
$q = mysqli_query( $conn, $sql );
while( $f = mysqli_fetch_assoc( $q ) ) {
    echo $f['title']." - ".$f['price']."<br/>";
}

mysqli_close( $conn );

4.1 สร้างตัวแปร $sql เก็บคำสั่ง SELECT ของภาษา SQL โดยเป็นการดึงข้อมูลทั้งหมดในตารางแบบไม่มีเงื่อนไข

4.2 ประมวลผลคำสั่ง SQL ด้วยคำสั่ง mysqli_query 

4.3 ใช้ลูป while เพื่อวนข้อมูลจากคำสั่ง mysqli_fetch_assoc

4.4 ภายในลูป while ใช้คำสั่ง echo แสดงข้อมูลชื่อผลไม้ (title) และราคา (price) ออกมาที่หน้าเว็บไซต์ และวนจนครบข้อมูล

4.4 ปิดการเชื่อมต่อฐานข้อมูล MySQL ด้วยคำสั่ง mysqli_close

 

ผลลัพธ์

orange - 50
apple - 60
banana - 40
mango - 70
berry - 80

 

ตัวอย่าง โปรแกรมแบบเต็ม

<?php
    // เชื่อมต่อฐานข้อมูล
    $conn = mysqli_connect("localhost", "root", "", "db_example");
    mysqli_query( $conn, "SET NAMES UTF8" );

    $sql = " SELECT * FROM fruit ";
    $q = mysqli_query( $conn, $sql );
    while( $f = mysqli_fetch_assoc( $q ) ) {
        echo $f['title']." - ".$f['price']."<br/>";
    }

    // ยกเลิกการเชื่อมต่อฐานข้อมูล
    mysqli_close( $conn );
?>
แก้ไข 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ