# 网页产品报价系统 **Repository Path**: MrBai227/web-product-quotation-system ## Basic Information - **Project Name**: 网页产品报价系统 - **Description**: 简单制作了网页产品报价系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2025-09-28 - **Last Updated**: 2026-07-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 产品报价管理系统 v2.1 这是一个基于PHP和MySQL的产品报价管理系统,专为电子产品经销商设计。系统采用现代化的架构设计,提供完整的前台展示和后台管理功能,具备完善的安全机制和权限控制系统。 ## 🚀 系统特色 ### 核心功能 - **产品管理**:完整的CRUD操作,支持多规格定价 - **成本控制**:后台成本管理,前台价格展示分离 - **权限管理**:多角色用户系统(管理员/查看者) - **数据安全**:敏感信息隔离,防止数据泄露 - **移动端优化**:响应式设计,触摸友好界面 - **智能缓存**:图片智能缓存,大幅提升性能 - **数据备份**:手动备份系统,确保数据安全 - **系统监控**:完整的日志记录和系统状态监控 ### 技术特点 - **现代化架构**:MVC模式,模块化设计 - **安全性**:CSRF保护、输入验证、SQL注入防护 - **性能优化**:API缓存、懒加载、错误处理 - **用户体验**:直观界面、操作简单、响应迅速 - **扩展性**:易于维护和扩展的代码结构 ## 📋 系统要求 - **PHP**: 7.4 或更高版本 - **MySQL**: 5.7 或更高版本 - **Web服务器**: Apache/Nginx - **PHP扩展**: PDO, PDO MySQL, JSON, cURL, GD, ZIP ## 🛠️ 安装步骤 ### 1. 环境准备 确保您的服务器已安装PHP和MySQL,并且PHP支持必要的扩展。 ### 2. 文件部署 将所有文件上传到您的Web服务器目录。 ### 3. 数据库配置 编辑 `config.php` 文件,修改数据库连接信息: ```php define('DB_HOST', 'localhost'); // 数据库主机 define('DB_USER', 'root'); // 数据库用户名 define('DB_PASS', 'root'); // 数据库密码 define('DB_NAME', 'bj'); // 数据库名称 ``` ### 4. 系统安装 1. 在浏览器中访问 `install.php` 2. 系统会自动检查环境要求 3. 点击"开始安装系统" 4. 系统将自动创建数据库和表 ### 5. 访问系统 - **前台页面**: 访问 `index.html` - **后台登录**: 访问 `login.php` - **默认账户**: - 管理员: `admin` / `admin123` - 查看者: `viewer` / `viewer123` ## 📁 文件结构 ``` ├── index.html # 前台展示页面 ├── config.php # 系统配置文件 ├── install.php # 系统安装页面 ├── login.php # 用户登录页面 ├── logout.php # 退出登录 ├── admin.php # 后台管理主页 ├── mobile_admin.php # 移动端管理页面 ├── products.php # 产品管理页面 ├── product_form.php # 产品添加/编辑表单 ├── product_variants.php # 产品规格管理页面 ├── categories.php # 分类管理页面 ├── admins.php # 管理员账户管理页面 ├── export.php # 数据导出页面 ├── backup.php # 数据备份/恢复页面 ├── api.php # API接口(前台数据) ├── system_logs.php # 系统日志管理页面 ├── system_info.php # 系统信息页面 ├── permission_denied.php # 权限不足提示页面 ├── assets/ # 静态资源目录 │ ├── css/ │ │ └── common.css # 公共样式文件 │ └── js/ │ └── common.js # 公共JavaScript文件 ├── mobile.css # 移动端专用样式 ├── mobile.js # 移动端优化脚本 ├── device_detector.js # 设备检测脚本 ├── backup_guide.md # 备份功能使用指南 └── README.md # 说明文档 ``` ## 🔧 功能模块 ### 前台功能 - **产品展示**:美观的产品列表展示 - **智能筛选**:支持分类、价格范围、关键词搜索 - **图片管理**:支持图片点击放大、智能缓存 - **响应式设计**:完美适配桌面和移动设备 - **性能优化**:图片懒加载、缓存优化 ### 后台管理 - **用户管理**:多角色用户系统,权限控制 - **产品管理**:完整的CRUD操作,成本管理 - **规格管理**:支持多尺寸价格管理 - **分类管理**:产品分类管理 - **数据导出**:支持CSV和Excel格式 - **数据备份**:手动备份功能 - **系统监控**:日志记录和系统状态监控 ### 安全特性 - **权限控制**:基于角色的访问控制 - **数据安全**:成本信息仅后台可见 - **输入验证**:防止SQL注入和XSS攻击 - **会话管理**:安全的用户会话处理 - **CSRF保护**:防止跨站请求伪造 ## 🗄️ 数据库结构 ### 管理员表 (admins) ```sql - id: 主键 - username: 用户名 - password: 密码(加密存储) - email: 邮箱 - role: 用户角色(admin/viewer) - last_login: 最后登录时间 - login_attempts: 登录尝试次数 - locked_until: 锁定时间 - created_at: 创建时间 - updated_at: 更新时间 ``` ### 产品表 (products) ```sql - id: 主键 - name: 产品名称 - model: 产品型号 - category: 产品分类 - cost_price: 成本价格(仅后台可见) - wholesale_price: 批发价格 - resale_price: 代发价格 - color: 产品颜色 - image_url: 产品图片URL - description: 产品描述 - status: 产品状态(active/inactive) - created_at: 创建时间 - updated_at: 更新时间 ``` ### 产品规格表 (product_variants) ```sql - id: 主键 - product_id: 产品ID(外键) - variant_name: 规格名称 - cost_price: 成本价格 - wholesale_price: 批发价格 - resale_price: 代发价格 - stock_quantity: 库存数量 - status: 规格状态 - created_at: 创建时间 - updated_at: 更新时间 ``` ### 系统日志表 (system_logs) ```sql - id: 主键 - user_id: 用户ID - action: 操作类型 - description: 操作描述 - ip_address: IP地址 - user_agent: 用户代理 - created_at: 创建时间 ``` ## 🔐 安全注意事项 1. **修改默认密码**:安装后立即修改默认管理员密码 2. **数据库安全**:确保数据库用户权限适当 3. **文件权限**:确保Web服务器对文件有适当的读写权限 4. **HTTPS**:建议在生产环境中使用HTTPS 5. **定期备份**:定期创建数据备份,确保数据安全 6. **日志监控**:定期检查系统日志,监控异常活动 7. **权限管理**:合理分配用户权限,避免权限过大 ## 📊 性能优化 ### 图片缓存优化 - **智能缓存**:系统自动缓存已加载的图片 - **错误处理**:图片加载失败时显示占位符 - **预加载**:关键图片自动预加载 - **性能监控**:可通过浏览器开发者工具监控缓存效果 ### 系统优化 - **API缓存**:支持浏览器缓存,减少服务器负载 - **懒加载**:图片支持懒加载,提升页面性能 - **响应式设计**:完美适配各种设备 - **代码优化**:统一的JavaScript函数声明风格 - **模块化设计**:分离功能模块,避免代码冲突 ## 🔄 版本历史 ### v2.1.0 (2025-08-03) - 新增产品下架/上架功能,支持产品状态管理 - 前台自动过滤下架产品,确保只显示上架产品 - 添加产品状态统计,实时显示上架/下架产品数量 - 完善权限控制,只有管理员可以进行下架/上架操作 - 修复产品表单页面转圈问题,提升用户体验 - 优化API缓存控制,确保数据实时更新 - 添加调试工具,方便排查问题和验证功能 - 完善操作日志,记录所有下架/上架操作 ### v2.0.0 (2025-08-03) - 重构系统架构,提升代码质量和可维护性 - 增强安全性,添加CSRF保护、输入验证等 - 优化数据库结构,添加索引和约束 - 完善日志系统,记录所有重要操作 - 改进用户界面,提供更好的用户体验 - 添加系统信息页面,方便监控系统状态 ### v1.5.1 (2025-08-03) - 修复JavaScript函数重复声明问题 - 优化设备检测和移动端优化代码结构 - 分离设备检测和移动端优化功能 ### v1.5.0 (2025-08-03) - 添加多角色用户管理系统 - 实现管理员和查看者两种用户角色 - 添加权限控制系统 - 添加移动端专用优化 ### v1.4.0 (2025-08-03) - 添加智能图片缓存系统 - 优化前台和后台图片加载性能 - 实现图片加载错误处理和优雅降级 ### v1.3.0 (2025-08-03) - 添加成本管理功能(仅后台可见) - 在产品列表和编辑页面显示成本价格 - 确保成本信息不会泄露到前台 ### v1.2.0 (2025-08-03) - 添加完整的数据备份/恢复功能 - 支持手动备份 - 添加备份文件下载功能 ### v1.1.0 (2025-08-03) - 添加产品规格管理功能 - 添加管理员账户管理功能 - 添加数据导出功能 - 前台添加图片点击放大功能 ### v1.0.0 (2025-08-03) - 初始版本发布 - 支持基本的产品管理功能 - 支持前台展示和后台管理 - 支持数据筛选和搜索 ## 🛠️ 技术支持 如果您在使用过程中遇到问题,请检查: 1. **环境检查**: - PHP版本是否满足要求 - MySQL服务是否正常运行 - 必要的PHP扩展是否已安装 2. **配置检查**: - 数据库连接配置是否正确 - Web服务器配置是否正确 - 文件权限设置是否正确 3. **功能检查**: - 用户权限是否正确设置 - 图片URL是否可访问 - JavaScript文件是否正确加载 4. **性能检查**: - 浏览器缓存是否正常工作 - 图片缓存是否正常工作 - 移动端设备检测是否正常工作 ## 📞 联系信息 - **开发者**:Mrbai - **系统版本**:v2.1.0 - **QQ**:770088910 - **最后更新**:2025年8月3日 - **技术支持**:请通过系统日志查看详细错误信息 --- **注意**:本系统仅供学习和商业使用,请遵守相关法律法规。在使用过程中如有问题,请及时联系技术支持。