实现了简易的零食系统,可以区分管理员和用户,管理员负责添加库存,用户可以购买零食,有简陋的网页交互,基于 gpt 编写^_^
明确需求
只有先明确了需求才能了解一个小项目的大纲,这样有助于我们逻辑清晰地完成目标,不至于缺漏。
基础
- 数据库设计:设计数据库模式,以存储用户信息、零食库存、进货记录和账单信息。使用 MySQL 或其他关系型数据库管理系统存储数据。
- 用户管理: 创建用户登录和身份验证系统,区分管理员和成员。使用 PHP 中的会话管理来跟踪用户的登录状态。
- 成员区分: 在用户数据库中,添加一个字段来区分实习成员和正式成员。字段用于计算购买折扣。
- 零食购买: 创建一个界面,允许用户浏览零食库存、选择要购买的零食和数量,根据用户身份(实习成员或正式成员)计算折扣,并生成账单。另外可以指定想要补充的零食名称和数量,选择性上传购买链接。
- 进货操作: 管理员有权向仓库添加零食库存。创建一个界面,管理员可以输入零食的名称、数量和进货价格来添加库存。
- 账单生成: 创建一个账单系统,记录每次购买的细节,包括零食名称、购买数量、单价、折扣和日期。在账单中跟踪实验室的余额,并记录每月的采购补贴。
- 实验室余额: 管理员应能够查看实验室的余额,根据进货和销售来更新余额。
- 数据展示: 创建一个界面,允许管理员和成员查看账单和库存情况,以便他们了解进货和购买的历史记录。
进阶
- 安全性考虑: 要确保系统的安全性,包括输入验证、防止 SQL 注入、密码加密和访问控制等方面。
- 用户界面: 设计用户友好的用户界面,以便成员和管理员可以轻松地执行操作和浏览信息。
- 数据备份: 定期备份数据库,以防止数据丢失。
实现流程
创建数据库 snack 和数据库表 users、snacks、purchase_history
分别存储登录账号、零食信息、历史购买记录
创建用户登录的 html 表单:userlogin.html
用于用户输入用户名和密码来进行登录
1 | <!-- <form method="post" action="userlogin_do.php"> --> |
创建 php 处理登录表单:userlogin_do.php
用于判断用户名和密码是否符合,并且要区分管理员和用户
1 |
|
创建 php 处理不同身份的登录状况
用户和管理员登陆后所需要实现的功能不同
管理员端:admin_dashboard.php
1 |
|
用户端:user_dashboard.php
1 |
|
创建 php 提供注销功能:logout.php
1 |
|
细化管理员端:admin_dashboard.php
实现库存展示、添加库存的功能
1 | <!DOCTYPE html> |
创建 php 实现添加库存功能:admin_add_snack.php
1 |
|
细化用户端:user_dashboard.php
实现购买零食功能
1 | <!DOCTYPE html> |
创建 php 实现购买零食功能:member_purchase_snacks.php
1 |
|
最终效果
最终创建的所有文件如下(hello world 省略):