Upload files to "/"
This commit is contained in:
65
log_return.php
Normal file
65
log_return.php
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
<?php
|
||||||
|
// เปิด error reporting (ช่วย debug)
|
||||||
|
ini_set('display_errors', 1);
|
||||||
|
error_reporting(E_ALL);
|
||||||
|
|
||||||
|
// ตั้งค่า timezone (สำคัญ)
|
||||||
|
date_default_timezone_set("Asia/Bangkok");
|
||||||
|
|
||||||
|
// ตั้งค่าการเชื่อมต่อฐานข้อมูล
|
||||||
|
$host = 'zeus.rmutsv.ac.th';
|
||||||
|
$dbname = 'libreturn';
|
||||||
|
$username = 'libreturn';
|
||||||
|
$password = 'lib99$A8';
|
||||||
|
try {
|
||||||
|
$pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
|
||||||
|
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||||
|
|
||||||
|
// รับค่าจาก ESP32
|
||||||
|
$barcode = $_POST['barcode'] ?? '';
|
||||||
|
$title = $_POST['title'] ?? '';
|
||||||
|
$patron_code = $_POST['patron_code'] ?? '';
|
||||||
|
$patron_name = $_POST['patron_name'] ?? '';
|
||||||
|
|
||||||
|
// ถ้าว่างให้เป็น NULL
|
||||||
|
$checkout_date = !empty($_POST['checkout_date']) ? $_POST['checkout_date'] : null;
|
||||||
|
$due_date = !empty($_POST['due_date']) ? $_POST['due_date'] : null;
|
||||||
|
$return_datetime = !empty($_POST['return_datetime']) ? $_POST['return_datetime'] : date('Y-m-d H:i:s');
|
||||||
|
|
||||||
|
$late_days = $_POST['late_days'] ?? 0;
|
||||||
|
$fine_amount = $_POST['fine_amount'] ?? 0;
|
||||||
|
$device_id = $_POST['device_id'] ?? '';
|
||||||
|
$status = $_POST['status'] ?? '';
|
||||||
|
|
||||||
|
// SQL
|
||||||
|
$sql = "INSERT INTO book_return_logs
|
||||||
|
(barcode, title, patron_code, patron_name, checkout_date, due_date, return_datetime, late_days, fine_amount, device_id, status)
|
||||||
|
VALUES
|
||||||
|
(:barcode, :title, :patron_code, :patron_name, :checkout_date, :due_date, :return_datetime, :late_days, :fine_amount, :device_id, :status)";
|
||||||
|
|
||||||
|
$stmt = $pdo->prepare($sql);
|
||||||
|
$stmt->bindValue(':barcode', $barcode);
|
||||||
|
$stmt->bindValue(':title', $title);
|
||||||
|
$stmt->bindValue(':patron_code', $patron_code);
|
||||||
|
$stmt->bindValue(':patron_name', $patron_name);
|
||||||
|
$stmt->bindValue(':checkout_date', $checkout_date);
|
||||||
|
$stmt->bindValue(':due_date', $due_date);
|
||||||
|
$stmt->bindValue(':return_datetime', $return_datetime);
|
||||||
|
$stmt->bindValue(':late_days', $late_days, PDO::PARAM_INT);
|
||||||
|
$stmt->bindValue(':fine_amount', $fine_amount, PDO::PARAM_STR);
|
||||||
|
$stmt->bindValue(':device_id', $device_id);
|
||||||
|
$stmt->bindValue(':status', $status);
|
||||||
|
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
// ✅ ตอบกลับ ESP32 ให้แน่นอน
|
||||||
|
header("Content-Type: text/plain");
|
||||||
|
echo "✅ Log saved successfully!";
|
||||||
|
flush();
|
||||||
|
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
header("Content-Type: text/plain");
|
||||||
|
echo "❌ Error: " . $e->getMessage();
|
||||||
|
flush();
|
||||||
|
}
|
||||||
|
?>
|
||||||
Reference in New Issue
Block a user