PHP 语言 PHP 项目实战之鲜花店管理系统

PHP阿木 发布于 2025-06-30 3 次阅读


PHP 项目实战:鲜花店管理系统

随着互联网的普及和电子商务的快速发展,传统的实体店面临着巨大的挑战。为了提高竞争力,许多实体店开始尝试线上销售,其中鲜花店就是一个典型的例子。本文将围绕PHP语言,介绍如何开发一个鲜花店管理系统,实现鲜花店线上销售、订单管理、库存管理等功能。

项目背景

鲜花店管理系统旨在为鲜花店提供一个便捷的线上销售平台,帮助店主管理订单、库存、客户信息等,提高工作效率,降低运营成本。系统将包括以下功能模块:

1. 用户模块:包括用户注册、登录、个人信息管理等功能。

2. 商品模块:包括商品添加、编辑、删除、分类管理等功能。

3. 订单模块:包括订单查看、处理、发货、售后等功能。

4. 库存模块:包括库存查看、入库、出库等功能。

5. 客户模块:包括客户信息查看、客户订单查看等功能。

技术选型

1. 后端语言:PHP

2. 数据库:MySQL

3. 前端框架:Bootstrap

4. 开发工具:Sublime Text、XAMPP

系统设计

1. 数据库设计

我们需要设计数据库表结构。以下是一个简单的数据库设计示例:

- 用户表(users):包含用户ID、用户名、密码、邮箱、电话、注册时间等字段。

- 商品表(products):包含商品ID、商品名称、价格、库存数量、分类ID等字段。

- 订单表(orders):包含订单ID、用户ID、订单金额、订单状态、下单时间等字段。

- 库存表(stock):包含库存ID、商品ID、入库数量、出库数量、库存时间等字段。

- 分类表(categories):包含分类ID、分类名称等字段。

2. 功能模块实现

2.1 用户模块

用户模块主要包括用户注册、登录、个人信息管理等功能。

php

// 用户注册


public function register($username, $password, $email, $phone) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 检查用户名是否存在


$stmt = $conn->prepare("SELECT FROM users WHERE username = ?");


$stmt->bind_param("s", $username);


$stmt->execute();


$result = $stmt->get_result();


if ($result->num_rows > 0) {


// 用户名已存在


return "用户名已存在";


} else {


// 插入新用户


$stmt = $conn->prepare("INSERT INTO users (username, password, email, phone) VALUES (?, ?, ?, ?)");


$stmt->bind_param("ssss", $username, $password, $email, $phone);


$stmt->execute();


return "注册成功";


}


}

// 用户登录


public function login($username, $password) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 检查用户名和密码


$stmt = $conn->prepare("SELECT FROM users WHERE username = ? AND password = ?");


$stmt->bind_param("ss", $username, $password);


$stmt->execute();


$result = $stmt->get_result();


if ($result->num_rows > 0) {


// 登录成功


return "登录成功";


} else {


// 登录失败


return "用户名或密码错误";


}


}


2.2 商品模块

商品模块主要包括商品添加、编辑、删除、分类管理等功能。

php

// 商品添加


public function addProduct($name, $price, $stock, $categoryId) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 插入新商品


$stmt = $conn->prepare("INSERT INTO products (name, price, stock, category_id) VALUES (?, ?, ?, ?)");


$stmt->bind_param("sdii", $name, $price, $stock, $categoryId);


$stmt->execute();


return "商品添加成功";


}

// 商品编辑


public function editProduct($id, $name, $price, $stock, $categoryId) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 更新商品信息


$stmt = $conn->prepare("UPDATE products SET name = ?, price = ?, stock = ?, category_id = ? WHERE id = ?");


$stmt->bind_param("sdii", $name, $price, $stock, $categoryId, $id);


$stmt->execute();


return "商品编辑成功";


}

// 商品删除


public function deleteProduct($id) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 删除商品


$stmt = $conn->prepare("DELETE FROM products WHERE id = ?");


$stmt->bind_param("i", $id);


$stmt->execute();


return "商品删除成功";


}

// 分类管理


public function manageCategories() {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 查询所有分类


$stmt = $conn->prepare("SELECT FROM categories");


$stmt->execute();


$result = $stmt->get_result();


return $result;


}


2.3 订单模块

订单模块主要包括订单查看、处理、发货、售后等功能。

php

// 订单查看


public function viewOrders() {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 查询所有订单


$stmt = $conn->prepare("SELECT FROM orders");


$stmt->execute();


$result = $stmt->get_result();


return $result;


}

// 订单处理


public function processOrder($id) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 更新订单状态


$stmt = $conn->prepare("UPDATE orders SET status = '已处理' WHERE id = ?");


$stmt->bind_param("i", $id);


$stmt->execute();


return "订单处理成功";


}

// 订单发货


public function shipOrder($id) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 更新订单状态


$stmt = $conn->prepare("UPDATE orders SET status = '已发货' WHERE id = ?");


$stmt->bind_param("i", $id);


$stmt->execute();


return "订单发货成功";


}

// 订单售后


public function afterSale($id) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 更新订单状态


$stmt = $conn->prepare("UPDATE orders SET status = '售后处理' WHERE id = ?");


$stmt->bind_param("i", $id);


$stmt->execute();


return "订单售后处理成功";


}


2.4 库存模块

库存模块主要包括库存查看、入库、出库等功能。

php

// 库存查看


public function viewStock() {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 查询所有库存信息


$stmt = $conn->prepare("SELECT FROM stock");


$stmt->execute();


$result = $stmt->get_result();


return $result;


}

// 库存入库


public function stockIn($productId, $quantity) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 更新库存信息


$stmt = $conn->prepare("UPDATE stock SET stock = stock + ? WHERE product_id = ?");


$stmt->bind_param("ii", $quantity, $productId);


$stmt->execute();


return "库存入库成功";


}

// 库存出库


public function stockOut($productId, $quantity) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 更新库存信息


$stmt->prepare("UPDATE stock SET stock = stock - ? WHERE product_id = ?");


$stmt->bind_param("ii", $quantity, $productId);


$stmt->execute();


return "库存出库成功";


}


2.5 客户模块

客户模块主要包括客户信息查看、客户订单查看等功能。

php

// 客户信息查看


public function viewCustomerInfo($userId) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 查询客户信息


$stmt = $conn->prepare("SELECT FROM users WHERE id = ?");


$stmt->bind_param("i", $userId);


$stmt->execute();


$result = $stmt->get_result();


return $result;


}

// 客户订单查看


public function viewCustomerOrders($userId) {


// 连接数据库


$conn = new mysqli('localhost', 'root', 'root', 'flower_shop');


// 查询客户订单


$stmt = $conn->prepare("SELECT FROM orders WHERE user_id = ?");


$stmt->bind_param("i", $userId);


$stmt->execute();


$result = $stmt->get_result();


return $result;


}


总结

本文介绍了如何使用PHP语言开发一个鲜花店管理系统。通过实现用户模块、商品模块、订单模块、库存模块和客户模块,我们构建了一个功能完善的鲜花店线上销售平台。在实际开发过程中,可以根据需求进一步优化和扩展系统功能,如添加支付接口、物流跟踪、营销活动等。希望本文能对您的PHP项目开发有所帮助。