Devdit
 

PHP เช็คข้อมูลซ้ำ RealTime MySQL

2.2K

PHP เช็คข้อมูลซ้ำ RealTime MySQL บทความนี้สอนเขียนโค้ดเช็คข้อมูลซ้ำจากตารางชื่อ colors ฐานข้อมูล MySQL พร้อมแสดงผลลัพธ์การเช็คค่าซ้ำแบบ RealTime ที่หน้าเว็บไซต์ผ่าน div สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง ข่อมูลในตาราง colors

+----+-------+
| id | title |
+----+-------+
|  1 | red   |
|  2 | green |
|  3 | blue  |
+----+-------+

 

ตัวอย่าง PHP เช็คข้อมูลซ้ำ RealTime MySQL

1. ไฟล์ชื่อ index.php

กรุณากรอกสี <input type="text" id="color" placeholder="ชื่อสี" autocomplete="off">
<div id="result" style="margin-top:.5rem"></div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
<script>
    $("#color").keyup(function(){
        let color = $(this).val();
        let data = { 'color': color };
        $.ajax({
            type: 'POST',
            url: "ajax.php",
            data: data,
            success: function( data ) {
                $( "#result" ).html( data );
            }
        });
    });
</script>

2. สร้างไฟล์ชื่อ ajax.php

<?php
	// ไฟล์ ajax.php
    $c = mysqli_connect("localhost", "root", "", "example");
    mysqli_query( $c, "SET NAMES UTF8" );

    isset( $_POST['color'] ) ? $color = $_POST['color'] : $color = "";

    $sql = " SELECT id FROM colors WHERE ( title = '{$color}' ) ";
    $q = mysqli_query( $c, $sql );
    $f = mysqli_fetch_assoc( $q );
    
    mysqli_close( $c );
    if( empty($f['id'])) {
        echo "<font style='color: green'>ข้อมูลไม่ซ้ำ</font>";
    } else {
        echo "<font style='color: red'>ข้อมูลซ้ำ</font>";
    }
?>

คำอธิบาย

PHP เช็คข้อมูลซ้ำ RealTime MySQL มีรายละเอียการเขียนโปรแกรมดังนี้

1. สร้าง input text id = color คือช่องกรอกข้อมูล และ div id = result เพื่อแสดงผลลัพธ์การเช็คข้อมูลซ้ำ

2. เมื่อผู้ใช้งานกรอกข้อมูล โปรแกรมจะทำงานในฟังก์ชัน $("#color").keyup โดยการส่งค่าตัวแปร color ไปที่ ajax.php

3. ที่ ajax.php เชื่อมต่อฐานข้อมูล และ SELECT ข้อมูลจากตาราง colors ด้วยเงื่อนไข WHERE ( title = '{$color}' )

4. กรณีถ้าตัวแปร id ไม่มีค่า คืนข้อความ “ข้อมูลไม่ซ้ำ” ถ้ามีค่าคืนข้อความ “ข้อมูลซ้ำ” และนำไปแสดงที่ div id = result

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