# Production Multi-Vendor Marketplace (PHP 8 + MySQL)

## 📌 Overview
ระบบตลาดออนไลน์ Multi-Vendor Marketplace ระดับ Production พร้อมใช้งานจริง ออกแบบด้วยสถาปัตยกรรม **MVC (PHP 8 Native PDO)** ไม่พึ่งพา Framework หนัก, ฐานข้อมูล MySQL แบบ Normalized, และการป้องกันความปลอดภัยครบถ้วน (SQL Injection, CSRF, XSS, Hashed Passwords)

---

## 🔑 Account Credentials (ข้อมูลบัญชีสำหรับเข้าใช้งาน)

ทุกบัญชีใช้รหัสผ่านเดียวสำหรับทดสอบ:

| บทบาท (Role) | Username | Password | รายละเอียด |
| :--- | :--- | :--- | :--- |
| **Administrator** | `admin` | `Admin@123` | เข้าถึงระบบจัดการแพลตฟอร์ม, อนุมัติร้านค้า |
| **Customer** | `customer` | `Customer@123` | ลูกค้าทั่วไป ซื้อสินค้า สั่งซื้อ ตะกร้า ติดตามออเดอร์ |
| **Seller** | `seller` | `Seller@123` | ร้านค้าที่ได้รับอนุมัติแล้ว เข้าถึง Seller Dashboard |

---

## 🚀 Installation & Setup on XAMPP (ขั้นตอนการติดตั้ง)

1. **คัดลอกโปรเจกต์ไปยังโฟลเดอร์ XAMPP**:
   วางโฟลเดอร์ไว้ที่ `c:\xampp\htdocs\shop`

2. **นำเข้าฐานข้อมูล (Import Database SQL)**:
   - เปิด **phpMyAdmin** (``)
   - สร้างฐานข้อมูลชื่อ `marketplace_db`
   - เลือกแท็บ **Import** และนำเข้าไฟล์ `database.sql` จากไดเรกทอรีโปรเจกต์ (`c:\xampp\htdocs\shop\database.sql`)

3. **เปิดใช้งาน Apache & MySQL ใน XAMPP Control Panel**

4. **เข้าใช้งานเว็บไซต์ผ่านเบราว์เซอร์**:
   - หน้าแรกสำหรับลูกค้า: `http://localhost/shop/`
   - เข้าสู่ระบบ: `http://localhost/shop/login`
   - แผงผู้ดูแลระบบ (Admin Center): `http://localhost/shop/admin/dashboard`
   - แผงร้านค้า (Seller Dashboard): `http://localhost/shop/seller/dashboard`

---

## 🛠 Features & Capabilities Included

- **Customer Workflow**: สมัครสมาชิก, เข้าสู่ระบบ, แก้ไขโปรไฟล์, ค้นหาสินค้าพร้อมกรองหมวดหมู่/เรียงลำดับราคา, เพิ่มสินค้าในตะกร้า, เลือกไซส์เสื้อผ้า (XS, S, M, L, XL, XXL), สั่งซื้อสินค้า, ติดตามคำสั่งซื้อ, รายการที่ชอบ (Wishlist), สมัครเป็นผู้ขายด้วยบัญชีเดิม
- **Seller Center**: Dashboard รายงานสรุปยอดขาย, ลงขายสินค้าพร้อมระบุ SKU, ราคาปกติ, ราคาโปรโมชั่น, จำนวนสต็อก, จัดการไซส์/ตัวเลือกสินค้า, ลบ/แก้ไขสินค้า
- **Admin Management**: Dashboard สรุปสถิติทั้งแพลตฟอร์ม, อนุมัติ/ปฏิเสธ คำขอเปิดร้านค้าพร้อมระบุเหตุผล, จัดการหมวดหมู่สินค้า
