PHPを使用してシンプルなオンライン注文管理システムを実装する方法

WBOY
リリース: 2023-09-25 11:50:01
オリジナル
2126 人が閲覧しました

PHPを使用してシンプルなオンライン注文管理システムを実装する方法

PHP を使用して簡単なオンライン注文管理システムを実装する方法

1. はじめに

オンライン注文管理システムは、一般的な電子商取引です。このアプリケーションは、販売者が注文プロセスを効果的に管理し、注文処理をスピードアップし、顧客満足度を向上させるのに役立ちます。この記事では、PHP を使用して、注文の作成、変更、クエリ、削除などの簡単なオンライン注文管理システムを実装する方法を紹介します。この記事は、読者が PHP の基本的な知識をすでに持っていることを前提としています。

2. システム要件

オンライン注文管理システムは、次の基本要件を満たす必要があります:

  1. ログイン機能: 管理者はユーザー名を使用してシステムにログインできます。そしてパスワード。
  2. 注文管理機能: 管理者は注文を作成、変更、クエリ、削除できます。
  3. 注文リスト機能: 管理者は注文のリストを表示し、条件でフィルタリングおよび並べ替えることができます。
  4. 注文詳細機能: 管理者は、注文番号、顧客情報、製品情報などを含む注文の詳細情報を表示できます。
  5. データベース サポート: システムは注文データを保存するために MySQL データベースを使用する必要があります。

3. 実装手順

  1. データベースの作成

まず、注文データを保存するデータベースを作成する必要があります。次の SQL ステートメントを使用して、「orders」という名前のデータベースを作成し、注文情報を保存するための「order_info」という名前のデータ テーブルを作成します。

CREATE DATABASE orders;
USE orders;

CREATE TABLE order_info (
    id INT(11) AUTO_INCREMENT PRIMARY KEY,
    order_number VARCHAR(20) NOT NULL,
    customer_name VARCHAR(50) NOT NULL,
    total_price DECIMAL(10,2) NOT NULL,
    create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
ログイン後にコピー
  1. ログイン ページの作成

プロジェクトのルート ディレクトリに「index.php」という名前のファイルを作成し、次のコードを追加します:

<?php
session_start();

if(isset($_POST['username']) && isset($_POST['password'])){
    if($_POST['username'] === 'admin' && $_POST['password'] === 'admin'){
        $_SESSION['login'] = true;
        header('Location: order_list.php');
        exit;
    }
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>登录</title>
    <meta charset="UTF-8">
</head>
<body>
    <form method="POST" action="index.php">
        <input type="text" name="username" placeholder="用户名">
        <input type="password" name="password" placeholder="密码">
        <button type="submit">登录</button>
    </form>
</body>
</html>
ログイン後にコピー

このページには簡単なログインフォームが含まれており、ユーザー名とパスワードが正しい場合、ログイン状態がセッションに保存され、注文一覧ページにジャンプします。

  1. 注文リスト ページの作成

プロジェクトのルート ディレクトリに「order_list.php」という名前のファイルを作成し、次のコードを追加します:

<?php
session_start();

if(!isset($_SESSION['login']) || $_SESSION['login'] !== true){
    header('Location: index.php');
    exit;
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>订单列表</title>
    <meta charset="UTF-8">
</head>
<body>
    <h1>订单列表</h1>
    <a href="create_order.php">创建新订单</a>
    <table>
        <tr>
            <th>订单号</th>
            <th>客户姓名</th>
            <th>订单金额</th>
            <th>创建时间</th>
            <th></th>
        </tr>
        <?php
        // 连接数据库
        $conn = new mysqli('localhost', 'root', 'password', 'orders');
        if ($conn->connect_error) {
            die('数据库连接失败:' . $conn->connect_error);
        }
        
        // 查询订单列表
        $sql = 'SELECT * FROM order_info ORDER BY create_time DESC';
        $result = $conn->query($sql);
        
        if ($result->num_rows > 0) {
            while($row = $result->fetch_assoc()) {
                echo '<tr>';
                echo '<td>'.$row['order_number'].'</td>';
                echo '<td>'.$row['customer_name'].'</td>';
                echo '<td>'.$row['total_price'].'</td>';
                echo '<td>'.$row['create_time'].'</td>';
                echo '<td><a href="order_details.php?id='.$row['id'].'">详情</a></td>';
                echo '</tr>';
            }
        } else {
            echo '<tr><td colspan="5">暂无订单信息</td></tr>';
        }
        
        $conn->close();
        ?>
    </table>
</body>
</html>
ログイン後にコピー

このページではまずログイン状態を確認し、ログインしていない場合はログインページにジャンプします。次に、データベースから注文リストをクエリし、それを HTML テーブルに表示します。各行には、注文番号、顧客名、注文金額、作成時間、注文の詳細を表示するリンクが表示されます。

  1. 注文詳細ページの作成

プロジェクトのルート ディレクトリに「order_details.php」という名前のファイルを作成し、次のコードを追加します:

<?php
session_start();

if(!isset($_SESSION['login']) || $_SESSION['login'] !== true){
    header('Location: index.php');
    exit;
}

if(!isset($_GET['id'])){
    header('Location: order_list.php');
    exit;
}

$id = $_GET['id'];

// 连接数据库
$conn = new mysqli('localhost', 'root', 'password', 'orders');
if ($conn->connect_error) {
    die('数据库连接失败:' . $conn->connect_error);
}

// 查询订单详情
$sql = 'SELECT * FROM order_info WHERE id = '.$id;
$result = $conn->query($sql);

if ($result->num_rows == 0) {
    header('Location: order_list.php');
    exit;
}

$row = $result->fetch_assoc();
?>

<!DOCTYPE html>
<html>
<head>
    <title>订单详情</title>
    <meta charset="UTF-8">
</head>
<body>
    <h1>订单详情</h1>
    <p><strong>订单号:</strong><?php echo $row['order_number'];?></p>
    <p><strong>客户姓名:</strong><?php echo $row['customer_name'];?></p>
    <p><strong>订单金额:</strong><?php echo $row['total_price'];?></p>
    <p><strong>创建时间:</strong><?php echo $row['create_time'];?></p>
    <a href="edit_order.php?id=<?php echo $row['id'];?>">编辑订单</a>
    <a href="delete_order.php?id=<?php echo $row['id'];?>" onclick="return confirm('确认删除该订单吗?')">删除订单</a>
</body>
</html>
ログイン後にコピー

このページではまずログイン状況と注文IDを確認しますので、ログインしていない場合や注文IDが渡されていない場合は注文一覧ページにジャンプします。次に、データベースから注文の詳細をクエリし、HTML ページに表示します。このページには、注文を編集したり注文を削除したりするためのリンクも含まれています。

  1. 注文作成ページの作成

プロジェクトのルート ディレクトリに「create_order.php」という名前のファイルを作成し、次のコードを追加します:

<?php
session_start();

if(!isset($_SESSION['login']) || $_SESSION['login'] !== true){
    header('Location: index.php');
    exit;
}

if(isset($_POST['submit'])){
    // 获取订单信息
    $order_number = $_POST['order_number'];
    $customer_name = $_POST['customer_name'];
    $total_price = $_POST['total_price'];

    // 连接数据库
    $conn = new mysqli('localhost', 'root', 'password', 'orders');
    if ($conn->connect_error) {
        die('数据库连接失败:' . $conn->connect_error);
    }

    // 创建订单
    $sql = 'INSERT INTO order_info (order_number, customer_name, total_price) VALUES ("'.$order_number.'", "'.$customer_name.'", '.$total_price.')';
    $result = $conn->query($sql);

    if($result === true){
        header('Location: order_list.php');
        exit;
    } else {
        die('创建订单失败:' . $conn->error);
    }

    $conn->close();
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>创建订单</title>
    <meta charset="UTF-8">
</head>
<body>
    <h1>创建订单</h1>
    <form method="POST" action="create_order.php">
        <input type="text" name="order_number" placeholder="订单号">
        <input type="text" name="customer_name" placeholder="客户姓名">
        <input type="number" step="0.01" name="total_price" placeholder="订单金额">
        <button type="submit" name="submit">创建订单</button>
    </form>
</body>
</html>
ログイン後にコピー

このページではまずログイン状態を確認し、ログインしていない場合はログインページにジャンプします。その後、注文フォームが送信されると、注文情報がデータベースに保存されます。

  1. 注文編集ページの作成と注文機能の削除

注文編集機能の実装は注文作成と同様で、「edit_order.php」に以下のコードを追加するだけです。ページ:

<?php
session_start();

if(!isset($_SESSION['login']) || $_SESSION['login'] !== true){
    header('Location: index.php');
    exit;
}

if(!isset($_GET['id'])){
    header('Location: order_list.php');
    exit;
}

$id = $_GET['id'];

// 连接数据库
$conn = new mysqli('localhost', 'root', 'password', 'orders');
if ($conn->connect_error) {
    die('数据库连接失败:' . $conn->connect_error);
}

// 查询订单详情
$sql = 'SELECT * FROM order_info WHERE id = '.$id;
$result = $conn->query($sql);

if ($result->num_rows == 0) {
    header('Location: order_list.php');
    exit;
}

$row = $result->fetch_assoc();

if(isset($_POST['submit'])){
    // 获取订单信息
    $order_number = $_POST['order_number'];
    $customer_name = $_POST['customer_name'];
    $total_price = $_POST['total_price'];

    // 更新订单
    $sql = 'UPDATE order_info SET order_number = "'.$order_number.'", customer_name = "'.$customer_name.'", total_price = '.$total_price.' WHERE id = '.$id;
    $result = $conn->query($sql);

    if($result === true){
        header('Location: order_details.php?id='.$id);
        exit;
    } else {
        die('编辑订单失败:' . $conn->error);
    }

    $conn->close();
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>编辑订单</title>
    <meta charset="UTF-8">
</head>
<body>
    <h1>编辑订单</h1>
    <form method="POST" action="edit_order.php?id=<?php echo $row['id'];?>">
        <input type="text" name="order_number" placeholder="订单号" value="<?php echo $row['order_number'];?>">
        <input type="text" name="customer_name" placeholder="客户姓名" value="<?php echo $row['customer_name'];?>">
        <input type="number" step="0.01" name="total_price" placeholder="订单金额" value="<?php echo $row['total_price'];?>">
        <button type="submit" name="submit">保存修改</button>
    </form>
</body>
</html>
ログイン後にコピー

注文削除関数の実装は似ていますが、次のコードを「delete_order.php」ページに追加するだけです:

<?php
session_start();

if(!isset($_SESSION['login']) || $_SESSION['login'] !== true){
    header('Location: index.php');
    exit;
}

if(!isset($_GET['id'])){
    header('Location: order_list.php');
    exit;
}

$id = $_GET['id'];

// 连接数据库
$conn = new mysqli('localhost', 'root', 'password', 'orders');
if ($conn->connect_error) {
    die('数据库连接失败:' . $conn->connect_error);
}

// 删除订单
$sql = 'DELETE FROM order_info WHERE id = '.$id;
$result = $conn->query($sql);

if($result === true){
    header('Location: order_list.php');
    exit;
} else {
    die('删除订单失败:' . $conn->error);
}

$conn->close();
?>
ログイン後にコピー

このページでは、最初にログイン ステータスと注文 ID がチェックされます。 . ユーザーがログインしていない場合、または注文IDが渡されていない場合は、注文一覧ページにジャンプします。そして、指定されたidの注文をデータベースから削除し、注文一覧ページにジャンプします。

IV. 概要
この記事では、PHP を使用して、注文の作成、変更、クエリ、削除などの簡単なオンライン注文管理システムを実装する方法を紹介します。この記事のサンプル コードを通じて、読者は PHP と MySQL を使用して単純な電子商取引アプリケーションを実装し、販売業者により効率的な注文管理方法を提供する方法を学ぶことができます。もちろん、これは単なる基本的な例であり、実際のアプリケーションではさらに多くの機能とセキュリティを考慮する必要があります。この記事が読者のお役に立てれば幸いです、読んでいただきありがとうございます!

以上がPHPを使用してシンプルなオンライン注文管理システムを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!