File manager - Edit - /var/www/order.cmtc.ac.th/index_5.php
Back
<?php session_start(); include('config/db.php'); // ✅ ดึงสถานะระบบจอง $setting_booking = $conn->query("SELECT setting_value FROM settings WHERE setting_key='booking_status'")->fetch_assoc(); $booking_status = $setting_booking['setting_value'] ?? 'on'; // ✅ ดึงสถานะ Pre Order $setting_preorder = $conn->query("SELECT setting_value FROM settings WHERE setting_key='free_order'")->fetch_assoc(); $preorder_status = $setting_preorder['setting_value'] ?? 'off'; // ✅ ดึงรายการสินค้า $products = $conn->query("SELECT * FROM products ORDER BY id ASC"); // ✅ เพิ่มสินค้าเข้าตะกร้า if(isset($_GET['add_cart'])){ $pid = intval($_GET['add_cart']); $prod = $conn->query("SELECT stock FROM products WHERE id=$pid")->fetch_assoc(); if($prod){ if($prod['stock'] > 0 || $preorder_status == 'on'){ if(!isset($_SESSION['cart'][$pid])){ $_SESSION['cart'][$pid] = 1; } else { $_SESSION['cart'][$pid]++; } header("Location: index.php?cart_added=1"); exit; } else { header("Location: index.php?out_of_stock=1"); exit; } } } // ✅ นับจำนวนสินค้าในตะกร้า $cart_count = 0; if(isset($_SESSION['cart'])) { foreach($_SESSION['cart'] as $qty) { $cart_count += $qty; } } ?> <!DOCTYPE html> <html lang="th"> <head> <meta charset="UTF-8"> <title><?=$system_name?> <?=$school_name?></title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet"> <link href="https://cdn.jsdelivr.net/npm/lightbox2@2.11.4/dist/css/lightbox.min.css" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600;700&display=swap" rel="stylesheet"> <style> body { font-family: 'Kanit', sans-serif; background-color: #faf7f2; } .navbar { background: linear-gradient(45deg, #44000E, #44000E); } .navbar-brand { font-weight: 600; color: #fff !important; font-size: 1.3rem; } .btn-gold { background: linear-gradient(45deg, #c9a23f, #ffca28); color: #000; font-weight: 600; border: none; } .btn-gold:hover { background: linear-gradient(45deg, #ffca28, #d4af37); } .badge-cart { background: #ffcc00; color: #000; font-size: 13px; margin-left: 5px; border-radius: 10px; padding: 2px 7px; } footer { background-color: #44000E; color: #f5f5f5; text-align: center; padding: 20px 10px; margin-top: 50px; } .product-images { display: flex; justify-content: center; align-items: flex-start; gap: 10px; overflow-x: auto; } .product-image { width: 45%; position: relative; overflow: hidden; border-radius: 10px; } .product-image img { width: 100%; aspect-ratio: 1/1; object-fit: cover; transition: transform 0.3s ease; border-radius: 10px; } .product-image:hover img { transform: scale(1.05); } .img-label { position: absolute; bottom: 8px; left: 8px; background: rgba(0,0,0,0.6); color: #fff; padding: 3px 8px; border-radius: 6px; font-size: 13px; } @media(max-width:576px){ .product-image{width:70%;max-width:200px;} } </style> </head> <body> <nav class="navbar navbar-expand-lg navbar-dark shadow-sm"> <div class="container"> <a class="navbar-brand" href="#"> <?=$system_name?></a> <div class="ms-auto d-flex gap-2"> <a href="user/index.php" class="btn btn-warning btn-sm">🛒 ตะกร้า <?php if($cart_count > 0): ?><span class="badge-cart"><?=$cart_count?></span><?php endif; ?> </a> <a href="user/check_status.php" class="btn btn-outline-light btn-sm">ตรวจสอบสถานะ</a> <a href="admin/index.php" class="btn btn-outline-light btn-sm">เข้าสู่ระบบผู้ดูแล</a> </div> </div> </nav> <div class="container py-5" id="products"> <?php if($booking_status == 'off'): ?> <div class="alert alert-danger text-center fs-5 fw-bold mb-4"> ⛔ ขณะนี้ระบบยังไม่เปิดรับจองเหรียญ </div> <?php endif; ?> <div class="row g-4"> <?php while($row = $products->fetch_assoc()): ?> <?php $is_out_of_stock = ($row['stock'] <= 0); $can_preorder = ($preorder_status == 'on'); ?> <div class="col-md-4 col-sm-6"> <div class="card h-100 text-center p-2"> <h5 class="fw-bold mt-2 mb-3"><?=$row['name']?></h5> <div class="product-images"> <?php if($row['img1']): ?> <div class="product-image"> <a href="uploads/products/<?=$row['img1']?>" data-lightbox="product<?=$row['id']?>" data-title="<?=$row['name']?> - ด้านหน้า"> <img src="uploads/products/<?=$row['img1']?>" alt="ด้านหน้า"> <div class="img-label">ด้านหน้า</div> </a> </div> <?php endif; ?> <?php if($row['img2']): ?> <div class="product-image"> <a href="uploads/products/<?=$row['img2']?>" data-lightbox="product<?=$row['id']?>" data-title="<?=$row['name']?> - ด้านหลัง"> <img src="uploads/products/<?=$row['img2']?>" alt="ด้านหลัง"> <div class="img-label">ด้านหลัง</div> </a> </div> <?php endif; ?> </div> <div class="mt-3"> <p class="text-muted mb-1">ราคา <?=number_format($row['price'],2)?> บาท</p> <?php if(!$is_out_of_stock): ?> <span class="badge bg-secondary mb-2">คงเหลือ <?=$row['stock']?> ชิ้น</span> <?php else: ?> <?php if($can_preorder): ?> <span class="badge bg-warning mb-2 text-dark">Pre Order เปิดอยู่</span> <?php else: ?> <span class="badge bg-danger mb-2">สินค้าหมด (ยังไม่เปิด Pre Order)</span> <?php endif; ?> <?php endif; ?> </div> <div class="mt-auto mb-3"> <?php if($booking_status == 'off'): ?> <button class="btn btn-secondary w-100" disabled>ระบบปิดการจอง</button> <?php elseif($is_out_of_stock && !$can_preorder): ?> <button class="btn btn-secondary w-100" disabled>สินค้าหมด</button> <?php else: ?> <a href="?add_cart=<?=$row['id']?>" class="btn btn-gold w-100">เพิ่มลงตะกร้า</a> <?php endif; ?> </div> </div> </div> <?php endwhile; ?> </div> </div> <!-- ✅ Modal แจ้งเตือน --> <div class="modal fade" id="cartModal" tabindex="-1" aria-labelledby="cartModalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content border-0 shadow-lg rounded-4"> <div class="modal-header bg-success text-white"> <h5 class="modal-title" id="cartModalLabel">เพิ่มสินค้าสำเร็จ</h5> <button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body text-center py-4"> <h1 class="text-success mb-3">✅</h1> <p class="fs-5 fw-semibold">เพิ่มสินค้าลงตะกร้าเรียบร้อยแล้ว!</p> </div> <div class="modal-footer justify-content-center"> <a href="user/index.php" class="btn btn-primary">ดูตะกร้าสินค้า</a> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">ปิด</button> </div> </div> </div> </div> <footer> <p class="mb-0">วิทยาลัยเทคนิคเชียงใหม่ สถาบันการอาชีวศึกษาภาคเหนือ 1<br> 9 ถ.เวียงแก้ว ต.ศรีภูมิ อ.เมืองเชียงใหม่ จ.เชียงใหม่ 50200 โทรศัพท์ 053-217708-9</p> <small>© <?=date('Y')?> Chiang Mai Technical College</small> </footer> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/lightbox2@2.11.4/dist/js/lightbox-plus-jquery.min.js"></script> <?php if(isset($_GET['cart_added'])): ?> <script> document.addEventListener('DOMContentLoaded', function(){ const modal = new bootstrap.Modal(document.getElementById('cartModal')); modal.show(); setTimeout(() => modal.hide(), 3000); }); </script> <?php endif; ?> </body> </html>
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.43 |
proxy
|
phpinfo
|
Settings