File manager - Edit - /home/webapp69.cm.in.th/u69319090044/shop/MANUAL.md
Back
# ð āļāļđāđāļĄāļ·āļāļāļēāļĢāđāļāđāļāļēāļāļĢāļ°āļāļāļĢāđāļēāļāļāđāļēāļāļāļāđāļĨāļāđ CMTC SHOP āļĢāļ°āļāļāđāļ§āđāļāđāļāļāđāļĢāđāļēāļāļāđāļēāļāļāļāđāļĨāļāđ **CMTC SHOP** āļāļąāļāļāļēāļāļķāđāļāļāđāļ§āļĒāļ āļēāļĐāļē PHP āđāļĨāļ° MySQL āļāļĢāđāļāļĄāļāļĩāđāļāļāđāļāļąāļāļŠāļĄāļąāļĒ (Glassmorphism & Responsive Design) āļĢāļāļāļĢāļąāļāļāļēāļĢāđāļāđāļāļēāļāļāļąāđāļāļāļāļāļāļĄāļāļīāļ§āđāļāļāļĢāđāđāļĨāļ°āļŠāļĄāļēāļĢāđāļāđāļāļ --- ## ð āļŠāļēāļĢāļāļąāļ 1. [āļāļēāļĢāļāļīāļāļāļąāđāļāđāļĨāļ°āđāļĢāļīāđāļĄāļāđāļāđāļāđāļāļēāļ (Installation)](#1-āļāļēāļĢāļāļīāļāļāļąāđāļāđāļĨāļ°āđāļĢāļīāđāļĄāļāđāļāđāļāđāļāļēāļ) 2. [āļāđāļāļĄāļđāļĨāļāļąāļāļāļĩāļāļđāđāđāļāđāļāļēāļāļŠāļģāļŦāļĢāļąāļāļāļāļŠāļāļ (Demo Accounts)](#2-āļāđāļāļĄāļđāļĨāļāļąāļāļāļĩāļāļđāđāđāļāđāļāļēāļāļŠāļģāļŦāļĢāļąāļāļāļāļŠāļāļ) 3. [āļāļđāđāļĄāļ·āļāļŠāļģāļŦāļĢāļąāļāļĨāļđāļāļāđāļēāļāļąāđāļ§āđāļ (Customer Guide)](#3-āļāļđāđāļĄāļ·āļāļŠāļģāļŦāļĢāļąāļāļĨāļđāļāļāđāļēāļāļąāđāļ§āđāļ) - 3.1 āļāļēāļĢāđāļāđāļēāļŠāļđāđāļĢāļ°āļāļāđāļĨāļ°āļāļēāļĢāļŠāļĄāļąāļāļĢāļŠāļĄāļēāļāļīāļ - 3.2 āļāļēāļĢāđāļĨāļ·āļāļāļāļ·āđāļāļŠāļīāļāļāđāļēāđāļĨāļ°āđāļĨāļ·āļāļāļāļāļēāļ (Size) - 3.3 āļāļēāļĢāļāļąāļāļāļēāļĢāļāļ°āļāļĢāđāļēāļŠāļīāļāļāđāļē (Shopping Cart) - 3.4 āļāļēāļĢāļŠāļąāđāļāļāļ·āđāļāđāļĨāļ°āļāļģāļĢāļ°āđāļāļīāļāļāļĢāđāļāļĄāđāļ§āļĨāļēāļāļąāļāļāļāļĒāļŦāļĨāļąāļ 20 āļāļēāļāļĩ 4. [āļāļđāđāļĄāļ·āļāļŠāļģāļŦāļĢāļąāļāļāļđāđāļāļđāđāļĨāļĢāļ°āļāļ (Admin Guide)](#4-āļāļđāđāļĄāļ·āļāļŠāļģāļŦāļĢāļąāļāļāļđāđāļāļđāđāļĨāļĢāļ°āļāļ) - 4.1 āļāļēāļĢāđāļāđāļēāļŠāļđāđāļŦāļāđāļē Admin Panel - 4.2 āļāļēāļĢāđāļāļīāđāļĄāļŠāļīāļāļāđāļēāđāļŦāļĄāđāļāļĢāđāļāļĄāļāļąāļāđāļŦāļĨāļāļĢāļđāļāļ āļēāļ - 4.3 āļāļēāļĢāđāļāđāđāļāđāļĨāļ°āļĨāļāļŠāļīāļāļāđāļē 5. [āđāļāļĢāļāļŠāļĢāđāļēāļāļĢāļ°āļāļāđāļĨāļ°āļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒ (Architecture & Security)](#5-āđāļāļĢāļāļŠāļĢāđāļēāļāļĢāļ°āļāļāđāļĨāļ°āļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒ) --- ## 1. āļāļēāļĢāļāļīāļāļāļąāđāļāđāļĨāļ°āđāļĢāļīāđāļĄāļāđāļāđāļāđāļāļēāļ ### 1.1 āļāļēāļĢāļĢāļąāļāļāđāļēāļ XAMPP (Localhost) 1. āđāļāļīāļāđāļāļĢāđāļāļĢāļĄ **XAMPP Control Panel** āđāļĨāļ°āļāļ **Start** āļāļĩāđāļāļĢāļīāļāļēāļĢ **Apache** āđāļĨāļ° **MySQL** 2. āļāļģāđāļāļĨāđāļāļāļĢāđāđāļāļĢāđāļāļāļāđāđāļāļ§āļēāļāđāļ§āđāļāļĩāđ `C:\xampp\htdocs\shop` 3. āđāļāļīāļāđāļāļĢāļēāļ§āđāđāļāļāļĢāđāđāļĨāđāļ§āļāļīāļĄāļāđ URL: ```text http://localhost/shop/install.php ``` 4. āļĢāļ°āļāļāļāļ°āļāļģāļāļēāļĢāļŠāļĢāđāļēāļāļāļēāļāļāđāļāļĄāļđāļĨ `online_shop`, āļāļēāļĢāļēāļāļāđāļāļĄāļđāļĨ (Tables), āļ§āļīāļ§ (Views), āļāļĢāļīāļāđāļāļāļĢāđ (Triggers) āđāļĨāļ°āļāđāļāļĄāļđāļĨāļāļąāļ§āļāļĒāđāļēāļāđāļŦāđāļāļąāļāđāļāļĄāļąāļāļīāļāļąāļāļāļĩ 5. āļŦāļĨāļąāļāļāļēāļāļāļīāļāļāļąāđāļāļŠāļģāđāļĢāđāļ āđāļŦāđāļāļāļāļļāđāļĄ **"āđāļāđāļēāļŠāļđāđāļĢāđāļēāļāļāđāļē →"** āļŦāļĢāļ·āļāđāļāđāļēāļāļĩāđ `http://localhost/shop/index.php` --- ## 2. āļāđāļāļĄāļđāļĨāļāļąāļāļāļĩāļāļđāđāđāļāđāļāļēāļāļŠāļģāļŦāļĢāļąāļāļāļāļŠāļāļ | āļāļāļāļēāļ (Role) | āļāļ·āđāļāļāļđāđāđāļāđ (Username) | āļĢāļŦāļąāļŠāļāđāļēāļ (Password) | āļŠāļīāļāļāļīāđāļāļēāļĢāđāļāđāļāļēāļ | | :--- | :--- | :--- | :--- | | **āļāļđāđāļāļđāđāļĨāļĢāļ°āļāļ (Admin)** | `Admin` āļŦāļĢāļ·āļ `Admin011` | `password123` | āļāļąāļāļāļēāļĢāļŠāļīāļāļāđāļē, āđāļāļīāđāļĄ/āļĨāļ/āđāļāđāđāļāļŠāļīāļāļāđāļē | | **āļĨāļđāļāļāđāļē (Customer)** | `69319090044` | `password123` | āļŠāļąāđāļāļāļ·āđāļāļŠāļīāļāļāđāļē, āļāļąāļāļāļēāļĢāļāļ°āļāļĢāđāļē, āļāļģāļĢāļ°āđāļāļīāļ | | **āļĨāļđāļāļāđāļē (Customer)** | `somchai_dev` | `password123` | āļŠāļąāđāļāļāļ·āđāļāļŠāļīāļāļāđāļē, āļāļąāļāļāļēāļĢāļāļ°āļāļĢāđāļē, āļāļģāļĢāļ°āđāļāļīāļ | --- ## 3. āļāļđāđāļĄāļ·āļāļŠāļģāļŦāļĢāļąāļāļĨāļđāļāļāđāļēāļāļąāđāļ§āđāļ (Customer Guide) ### 3.1 āļāļēāļĢāđāļāđāļēāļŠāļđāđāļĢāļ°āļāļ / āļŠāļĄāļąāļāļĢāļŠāļĄāļēāļāļīāļ - **āđāļāđāļēāļŠāļđāđāļĢāļ°āļāļ (`login.php`)**: āļāļĢāļāļāļāļ·āđāļāļāļđāđāđāļāđāđāļĨāļ°āļĢāļŦāļąāļŠāļāđāļēāļāđāļāļ·āđāļāđāļāđāļēāđāļāđāļāļēāļ - **āļŠāļĄāļąāļāļĢāļŠāļĄāļēāļāļīāļ (`register.php`)**: āļāļĢāļāļāļāļ·āđāļ, āļāļēāļĄāļŠāļāļļāļĨ, āļāļĩāđāļĄāļĨ, āļāļ·āđāļāļāļđāđāđāļāđ āđāļĨāļ°āļĢāļŦāļąāļŠāļāđāļēāļāđāļāļ·āđāļāļŠāļĢāđāļēāļāļāļąāļāļāļĩāđāļŦāļĄāđ ### 3.2 āļāļēāļĢāđāļĨāļ·āļāļāļāļđāđāļĨāļ°āļŠāļąāđāļāļāļ·āđāļāļŠāļīāļāļāđāļē (`index.php`) 1. āđāļāđāļēāļŠāļđāđāļŦāļāđāļēāļŦāļĨāļąāļāđāļāļ·āđāļāđāļĨāļ·āļāļāļāļđāļŠāļīāļāļāđāļēāđāļāļ°āļāļģ 2. āđāļĨāļ·āļāļāļĢāļ°āļāļļ **āļāļāļēāļ (Size)** āļāļĩāđāļāđāļāļāļāļēāļĢ āđāļāđāļ `Free Size`, `S`, `M`, `L`, `XL`, `XXL` āļŦāļĢāļ·āļāļāļāļēāļāļĢāļāļāđāļāđāļē 3. āļāļāļāļļāđāļĄ **"āļŦāļĒāļīāļāđāļŠāđāļāļ°āļāļĢāđāļē ð"** āļŠāļīāļāļāđāļēāļāļ°āļāļđāļāļāļąāļāļāļķāļāļĨāļāđāļāļāļ°āļāļĢāđāļēāļāļąāļāļāļĩ āđāļĨāļ°āļāļąāļ§āđāļĨāļāļāļąāļāļāļģāļāļ§āļāļāļāđāļāļāļāļāļāļ°āļāļĢāđāļēāļāļ°āļāļąāļāđāļāļāđāļāļ Real-time ### 3.3 āļāļēāļĢāļāļąāļāļāļēāļĢāļāļ°āļāļĢāđāļēāļŠāļīāļāļāđāļē (`cart.php`) - **āļāļĢāļąāļāļāļģāļāļ§āļāļŠāļīāļāļāđāļē**: āļāļāļāļļāđāļĄ `+` āļŦāļĢāļ·āļ `-` āđāļāļ·āđāļāđāļāļīāđāļĄ/āļĨāļāļāļģāļāļ§āļāļāļīāđāļ - **āļĨāļāļĢāļēāļĒāļāļēāļĢāļŠāļīāļāļāđāļē**: āļāļāļāļļāđāļĄ `"āļĨāļ"` āđāļĄāļ·āđāļāđāļĄāđāļāđāļāļāļāļēāļĢāļŠāļīāļāļāđāļēāļāļąāđāļ - **āļŠāļĢāļļāļāļĒāļāļāđāļāļīāļ**: āļĢāļ°āļāļāļāļģāļāļ§āļāļĒāļāļāļĢāļ§āļĄāļŠāļļāļāļāļīāļāļĢāđāļāļĄāļŠāļīāļāļāļīāļāļĢāļ°āđāļĒāļāļāđāļŠāđāļāļāļĢāļĩāđāļŦāđāļāļąāļāđāļāļĄāļąāļāļī - **āļĒāļ·āļāļĒāļąāļāļāļēāļĢāļŠāļąāđāļāļāļ·āđāļ**: āļāļāļāļļāđāļĄ **"āļŠāļąāđāļāļāļ·āđāļāđāļĨāļ°āļāļģāđāļāļīāļāļāļēāļĢāļāļģāļĢāļ°āđāļāļīāļ →"** āđāļāļ·āđāļāļŠāļĢāđāļēāļāđāļāļŠāļąāđāļāļāļ·āđāļ ### 3.4 āļĢāļ°āļāļāļāļąāļāđāļ§āļĨāļēāļāļāļĒāļŦāļĨāļąāļāļāļģāļĢāļ°āđāļāļīāļ 20 āļāļēāļāļĩ (`payment.php` / `order-status.php`) - āđāļĄāļ·āđāļāļŠāļĢāđāļēāļāļāļģāļŠāļąāđāļāļāļ·āđāļāđāļĨāđāļ§ āļĢāļ°āļāļāļāļ°āđāļĢāļīāđāļĄ **āļāļąāļāđāļ§āļĨāļēāļāļāļĒāļŦāļĨāļąāļ 20:00 āļāļēāļāļĩ** āđāļāļ Real-time - āļĨāļđāļāļāđāļēāļŠāļēāļĄāļēāļĢāļāđāļĨāļ·āļāļāļāđāļāļāļāļēāļāļāļģāļĢāļ°āđāļāļīāļāđāļāđ 2 āļāđāļāļāļāļēāļ: 1. **PromptPay (āļāļĢāđāļāļĄāđāļāļĒāđ)** ðē 2. **āļāļąāļāļĢāđāļāļĢāļāļīāļ (Credit Card)** ðģ - āļāļāļāļļāđāļĄ **"āļĒāļ·āļāļĒāļąāļāļāļēāļĢāļāļģāļĢāļ°āđāļāļīāļāļŠāļģāđāļĢāđāļ (Confirm Payment)"** āđāļāļ·āđāļāđāļŠāļĢāđāļāļŠāļīāđāļāļāļąāđāļāļāļāļ - â ïļ *āļŦāļēāļāđāļĄāđāļāļģāļĢāļ°āđāļāļīāļāļ āļēāļĒāđāļ 20 āļāļēāļāļĩ āļĢāļ°āļāļāļāļ°āļāļąāļāļāļāđāļāļāļĢāđāđāļāđāļāļŠāļāļēāļāļ° **āļŦāļĄāļāļāļēāļĒāļļ (Expired)** āđāļĨāļ°āļāļ·āļāļŠāļāđāļāļāļŠāļīāļāļāđāļēāļāļąāļāđāļāļĄāļąāļāļī* --- ## 4. āļāļđāđāļĄāļ·āļāļŠāļģāļŦāļĢāļąāļāļāļđāđāļāļđāđāļĨāļĢāļ°āļāļ (Admin Guide) ### 4.1 āļāļēāļĢāđāļāđāļēāļŠāļđāđāļĢāļ°āļāļāļāļąāļāļāļēāļĢāļĢāđāļēāļāļāđāļē 1. āđāļāđāļēāļŠāļđāđāļĢāļ°āļāļāļāđāļ§āļĒāļāļąāļāļāļĩāļĢāļ°āļāļąāļāđāļāļāļĄāļīāļ (`Admin` āļŦāļĢāļ·āļ `Admin011`) 2. āļāļ°āļāļĢāļēāļāļāļāļļāđāļĄ **"āļāļąāļāļāļēāļĢāļĢāđāļēāļāļāđāļē ð ïļ"** āļāļĩāđāđāļĄāļāļđāļāđāļēāļāļāļ āļŦāļĢāļ·āļāđāļāđāļēāļāđāļēāļ URL: `admin.php` ### 4.2 āļāļēāļĢāđāļāļīāđāļĄāļŠāļīāļāļāđāļēāđāļŦāļĄāđ 1. āļāļĨāļīāļāļāļļāđāļĄ **"+ āđāļāļīāđāļĄāļŠāļīāļāļāđāļēāđāļŦāļĄāđ"** 2. āļāļĢāļāļāļāđāļāļĄāļđāļĨāļŠāļīāļāļāđāļē: - **āļāļ·āđāļāļŠāļīāļāļāđāļē**: āļĢāļ°āļāļļāļāļ·āđāļāļŠāļīāļāļāđāļē - **āļĢāļēāļĒāļĨāļ°āđāļāļĩāļĒāļāļŠāļīāļāļāđāļē**: āļĢāļ°āļāļļāļāļģāļāļāļīāļāļēāļĒāļŠāļīāļāļāđāļē - **āļĢāļēāļāļēāļāļģāļŦāļāđāļēāļĒ**: āļĢāļ°āļāļļāļĢāļēāļāļēāļāđāļāļŦāļāđāļ§āļĒ (āļāļēāļ) - **āļāļāļēāļ (Size)**: āđāļĨāļ·āļāļāđāļāļŠāđāđāļĢāļīāđāļĄāļāđāļ - **āļŠāļāđāļāļāļāļāđāļŦāļĨāļ·āļ**: āļĢāļ°āļāļļāļāļģāļāļ§āļāļāļīāđāļ - **āļĢāļđāļāļ āļēāļāļŠāļīāļāļāđāļē**: āļŠāļēāļĄāļēāļĢāļāđāļĨāļ·āļāļāļāļąāļāđāļŦāļĨāļāđāļāļĨāđāļ āļēāļāļāļēāļāđāļāļĢāļ·āđāļāļ (`.jpg`, `.png`, `.webp`) āļŦāļĢāļ·āļāđāļŠāđ URL/Path āļāļāļāļĢāļđāļāļ āļēāļ 3. āļāļāļāļļāđāļĄ **"āļāļąāļāļāļķāļāļŠāļīāļāļāđāļēāđāļŦāļĄāđ"** ### 4.3 āļāļēāļĢāđāļāđāđāļāđāļĨāļ°āļĨāļāļŠāļīāļāļāđāļē - **āđāļāđāđāļāļŠāļīāļāļāđāļē**: āļāļāļāļļāđāļĄ `"āđāļāđāđāļ"` āđāļāđāļāļ§āļŠāļīāļāļāđāļēāļāļĩāđāļāđāļāļāļāļēāļĢ āļāļēāļāļāļąāđāļāđāļāđāđāļāļāđāļāļĄāļđāļĨāļŦāļĢāļ·āļāđāļāļĨāļĩāđāļĒāļāļĢāļđāļāļ āļēāļāđāļĨāđāļ§āļāļāļāļąāļāļāļķāļ - **āļĨāļāļŠāļīāļāļāđāļē**: āļāļāļāļļāđāļĄ `"āļĨāļ"` āđāļĨāļ°āļāļāļĒāļ·āļāļĒāļąāļāļāļēāļĢāļĨāļāđāļāļāļĨāđāļāļāļāđāļāļāļ§āļēāļĄāđāļāđāļāđāļāļ·āļāļ --- ## 5. āđāļāļĢāļāļŠāļĢāđāļēāļāļĢāļ°āļāļāđāļĨāļ°āļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒ - **Database Singleton Pattern**: āļāļąāļāļāļēāļĢāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļēāļāļāđāļāļĄāļđāļĨāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāđāļēāļ [classes/Database.php](file:///c:/Users/Lenovo/Desktop/shop/classes/Database.php) - **CSRF Token Protection**: āļāđāļāļāļāļąāļāļāļēāļĢāđāļāļĄāļāļĩāļāļĨāļāļĄāđāļāļĨāļāļāļģāļŠāļąāđāļāđāļāļāļļāļāļāļāļĢāđāļĄāļāļēāļĢāļāļģāļāļēāļ - **Prepared Statements (PDO)**: āļāđāļāļāļāļąāļāļāđāļāļāđāļŦāļ§āđ SQL Injection 100% - **XSS Protection**: āđāļāđāļēāļĢāļŦāļąāļŠāļāļąāļāļāļĢāļ°āļāļīāđāļĻāļĐāļāđāļēāļāļāļąāļāļāđāļāļąāļ `escape()` āļāđāļāļāđāļŠāļāļāļāļĨāļāļāļŦāļāđāļēāļāļ - **Image Fallback System**: āļĢāļāļāļĢāļąāļāļāļēāļĢāđāļŠāļāļāļāļĨāļĢāļđāļāļ āļēāļāļāļĒāđāļēāļāļāđāļāđāļāļ·āđāļāļāļāđāļēāļāļĢāļ°āļāļāļāļĢāļ§āļāļāļąāļ Path āđāļĨāļ°āļāļģāļŠāļģāļāļąāļāļāļąāļāđāļāļĄāļąāļāļī
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.27 |
proxy
|
phpinfo
|
Settings