Implementing Logistics Tracking and Delivery Management in PHP for E-commerce
This article provides a step‑by‑step PHP tutorial for building logistics tracking and delivery management features in an e‑commerce system, covering database schema design, code for inserting, updating, and querying tracking and delivery records, and explaining how these functions improve operational efficiency.
1. Implementing Logistics Tracking Functionality
1.1 Create Database Table
First, create a table named "tracking" in the e‑commerce database to store logistics tracking information. Example table structure:
CREATE TABLE tracking (
id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
order_id INT(11) NOT NULL,
status VARCHAR(255) NOT NULL,
update_time DATETIME
);1.2 Add Tracking Information
When an order status changes, insert a corresponding tracking record. Example code:
// Get order ID and status
$order_id = $_POST['order_id'];
$status = $_POST['status'];
// Get current time
$update_time = date('Y-m-d H:i:s');
// Insert tracking information
$sql = "INSERT INTO tracking (order_id, status, update_time) VALUES ($order_id, '$status', '$update_time')";
$result = mysqli_query($conn, $sql);1.3 Query Tracking Information
To display tracking data for an order, query the table and output the results. Example code:
// Get order ID
$order_id = $_POST['order_id'];
// Query tracking information
$sql = "SELECT * FROM tracking WHERE order_id = $order_id";
$result = mysqli_query($conn, $sql);
// Display tracking information
while ($row = mysqli_fetch_assoc($result)) {
echo $row['status'] . " - " . $row['update_time'] . "
";
}2. Implementing Delivery Management Functionality
2.1 Create Database Table
Create a "delivery" table to store delivery details. Example structure:
CREATE TABLE delivery (
id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
order_id INT(11) NOT NULL,
courier VARCHAR(255) NOT NULL,
delivery_time DATETIME
);2.2 Add Delivery Information
When an order is shipped, insert a delivery record. Example code:
// Get order ID, courier and delivery time
$order_id = $_POST['order_id'];
$courier = $_POST['courier'];
$delivery_time = date('Y-m-d H:i:s');
// Insert delivery information
$sql = "INSERT INTO delivery (order_id, courier, delivery_time) VALUES ($order_id, '$courier', '$delivery_time')";
$result = mysqli_query($conn, $sql);2.3 Update Delivery Information
To change delivery details such as the courier, update the record. Example code:
// Get order ID and new courier
$order_id = $_POST['order_id'];
$new_courier = $_POST['new_courier'];
// Update delivery information
$sql = "UPDATE delivery SET courier = '$new_courier' WHERE order_id = $order_id";
$result = mysqli_query($conn, $sql);2.4 Query Delivery Information
To view delivery data for an order, query and display it. Example code:
// Get order ID
$order_id = $_POST['order_id'];
// Query delivery information
$sql = "SELECT * FROM delivery WHERE order_id = $order_id";
$result = mysqli_query($conn, $sql);
// Display delivery information
while ($row = mysqli_fetch_assoc($result)) {
echo $row['courier'] . " - " . $row['delivery_time'] . "
";
}Conclusion
This tutorial demonstrates how to implement logistics tracking and delivery management using PHP and MySQL, essential features for improving user experience and operational efficiency in e‑commerce systems.
php中文网 Courses
php中文网's platform for the latest courses and technical articles, helping PHP learners advance quickly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.