Devdit
 

บันทึกเวลา ลงฐานข้อมูล PHP

2K

บันทึกเวลา ลงฐานข้อมูล PHP บทความนี้สอนวิธีการบันทึกเวลาลงฐานข้อมูล โดยสอน 2 วิธีคือ บันทึกเวลาตามที่ต้องการ และบันทึกเวลาแบบอัตโนมัติ ณ เวลาที่โปรแกรมทำงาน สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง โครงสร้างตาราง product

+--------+----------+------+-----+-------------------+-------------------+
| Field  | Type     | Null | Key | Default           | Extra             |
+--------+----------+------+-----+-------------------+-------------------+
| id     | int      | NO   | PRI | NULL              | auto_increment    |
| name   | char     | NO   |     | NULL              |                   |
| amount | int      | NO   |     | NULL              |                   |
| date   | datetime | NO   |     | CURRENT_TIMESTAMP | DEFAULT_GENERATED |
+--------+----------+------+-----+-------------------+-------------------+

 

ตัวอย่างที่ 1 บันทึกเวลา ลงฐานข้อมูล PHP ตามเวลาที่ต้องการ

<?php
  $c = mysqli_connect("localhost", "root", "", "demo");
  mysqli_query($c, "SET NANES UTF8");
  
  $date = "2022-10-30 10:30:00";
  $sql = "
              INSERT INTO 
              product ( name, amount, date )
              VALUES ( 'Test', 10, '{$date}' )
              ";
  $q = mysqli_query( $c, $sql );
  mysqli_close( $c );
?>

ผลลัพธ์

+----+------+--------+---------------------+
| id | name | amount | date                |
+----+------+--------+---------------------+
|  6 | Test |     10 | 2022-10-30 10:30:00 |
+----+------+--------+---------------------+

คำอธิบาย

จากตัวอย่างสร้างตัวแปรชื่อ date พร้อมข้อมูล "2022-10-30 10:30:00" จากนั้นนำไปบันทึกลงฐานข้อมูล product ด้วยคำสั่ง INSERT INTO ที่ column ชื่อ date พร้อมประมวลผลด้วยคำสั่ง mysqli_query

ตัวอย่างที่ 2 บันทึกเวลา ลงฐานข้อมูล PHP บันทึกเวลาแบบอัตโนมัติ

<?php
  $c = mysqli_connect("localhost", "root", "", "demo");
  mysqli_query($c, "SET NANES UTF8");
  
  $sql = "
              INSERT INTO 
              product ( name, amount )
              VALUES ( 'Demo', 20 )
              ";
  $q = mysqli_query( $c, $sql );
  mysqli_close( $c );
?>

ผลลัพธ์

+----+------+--------+---------------------+
| id | name | amount | date                |
+----+------+--------+---------------------+
|  7 | Demo |     20 | 2022-10-30 10:41:09 |
+----+------+--------+---------------------+

คำอธิบาย

จากตัวอย่าง INSERT ข้อมูลลงตาราง product โดยไม่ระบุ column date ซึ่งจะเป็นการให้ฐานข้อมูลเพิ่มวันที่ เวลา ณ ปัจจุบันให้เองอัตโนมัติ เนื่องจาก column date มีการกำหนด Default Value ไว้เป็น CURRENT_TIMESTAMP

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