ホームページ > バックエンド開発 > PHPチュートリアル > PHPで開発した中古リサイクルサイトがオンライン入札機能に対応

PHPで開発した中古リサイクルサイトがオンライン入札機能に対応

王林
リリース: 2023-07-01 20:36:01
オリジナル
836 人が閲覧しました

PHPで構築した中古リサイクルサイトがオンライン入札機能に対応しました

環境保護や資源のリサイクル・再利用への意識の高まりとともに、中古リサイクル産業が徐々に台頭してきています。ユーザーが中古品を販売し、他人に提供して使用することを容易にするためには、オンライン入札をサポートする中古品リサイクルサイトの開発が非常に必要です。この記事では、PHP を使用してオンライン入札機能を備えた中古リサイクル サイトを開発する方法と、関連するコード例を紹介します。

1. プロジェクトの準備

開始する前に、プロジェクトの準備作業を行う必要があります。まず、PHP 開発環境をインストールする必要があります。これは、WAMP/MAMP/LAMP およびその他のソフトウェア パッケージをダウンロードしてインストールすることで実現できます。次に、ユーザー情報やアイテム情報などのデータを保存するデータベースも必要ですが、この記事では MySQL データベースを使用します。

2. データベース設計

この中古リサイクル Web サイトの設計では、主にユーザー テーブルとアイテム テーブルの 2 つのデータベース テーブルが必要です。ユーザーテーブルは、ユーザー名、パスワード、電子メールなどのユーザー登録情報を保存するために使用されます。商品テーブルは、ユーザーが投稿した商品名、画像、説明、入札状況などの中古商品情報を格納するために使用されます。

ユーザー テーブルとアイテム テーブルの設計例を次に示します。

ユーザー テーブル (ユーザー):

CREATE TABLE `user` (
 `id` INT NOT NULL AUTO_INCREMENT,
 `username` VARCHAR(50) NOT NULL,
 `password` VARCHAR(50) NOT NULL,
 `email` VARCHAR(50) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ログイン後にコピー

アイテム テーブル (アイテム):

CREATE TABLE `item` (
 `id` INT NOT NULL AUTO_INCREMENT,
 `title` VARCHAR(50) NOT NULL,
 `image` VARCHAR(100) NOT NULL,
 `description` TEXT NOT NULL,
 `price` DECIMAL(10,2) NOT NULL,
 `status` INT NOT NULL DEFAULT 0,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ログイン後にコピー

三、サイト機能実装

この中古リサイクルサイトでは、主にユーザー登録、ユーザーログイン、アイテム公開、アイテム一覧表示、アイテム入札等の機能を実装しています。

  1. ユーザー登録

ユーザー登録機能では、ユーザー名、パスワード、メールアドレスを入力して登録することができます。登録プロセス中に、ユーザー名と電子メール アドレスが使用されているかどうかを確認する必要があります。これは、データベースにクエリを実行することで実行できます。

次は簡単なユーザー登録コードの例です:

<?php
// 连接数据库
$conn = mysqli_connect("localhost","root","root","db_name");
// 检查连接是否成功
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    exit();
}

// 接收注册表单提交的数据
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];

// 验证用户名是否已存在
$sql = "SELECT * FROM user WHERE username='$username'";
$result = mysqli_query($conn, $sql);
if(mysqli_num_rows($result) > 0){
    echo "用户名已存在";
    exit();
}

// 验证邮箱是否已存在
$sql = "SELECT * FROM user WHERE email='$email'";
$result = mysqli_query($conn, $sql);
if(mysqli_num_rows($result) > 0){
    echo "邮箱已存在";
    exit();
}

// 将用户注册信息插入数据库
$sql = "INSERT INTO user (username, password, email) VALUES ('$username', '$password', '$email')";
if (mysqli_query($conn, $sql)) {
    echo "注册成功";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

mysqli_close($conn);
?>
ログイン後にコピー
  1. ユーザー ログイン

ユーザー ログイン機能を使用すると、ユーザーはユーザー名を入力してログインできます。とパスワード。ログインに成功すると、さらにアイテムの公開、アイテムの一覧表示、アイテムの入札などの操作を行うことができます。

以下は簡単なユーザー ログイン コードの例です:

<?php
session_start();

// 连接数据库
$conn = mysqli_connect("localhost","root","root","db_name");
// 检查连接是否成功
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    exit();
}

// 接收登录表单提交的数据
$username = $_POST['username'];
$password = $_POST['password'];

// 验证用户名和密码是否匹配
$sql = "SELECT * FROM user WHERE username='$username' AND password='$password'";
$result = mysqli_query($conn, $sql);
if(mysqli_num_rows($result) > 0){
    // 登录成功,保存用户信息到session
    $_SESSION['username'] = $username;
    echo "登录成功";
} else {
    echo "用户名或密码错误";
}

mysqli_close($conn);
?>
ログイン後にコピー
  1. アイテム公開

アイテム公開機能を使用すると、ユーザーは名前、写真を入力できます。 、商品の説明、開始価格、その他の情報を入力し、この情報をデータベースに保存します。

次は、簡単なアイテム公開コードの例です:

<?php
session_start();

// 连接数据库
$conn = mysqli_connect("localhost","root","root","db_name");
// 检查连接是否成功
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    exit();
}

// 用户是否登录检查
if (!isset($_SESSION['username'])) {
    echo "请先登录";
    exit();
}

// 获取用户ID
$sql = "SELECT id FROM user WHERE username='{$_SESSION['username']}'";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$user_id = $row['id'];

// 接收物品发布表单提交的数据
$title = $_POST['title'];
$image = $_POST['image'];
$description = $_POST['description'];
$price = $_POST['price'];

// 将物品信息插入数据库
$sql = "INSERT INTO item (user_id, title, image, description, price) VALUES ($user_id, '$title', '$image', '$description', $price)";
if (mysqli_query($conn, $sql)) {
    echo "物品发布成功";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

mysqli_close($conn);
?>
ログイン後にコピー
  1. アイテム リスト表示

アイテム リスト表示関数は、公開されたすべてのアイテムを表示するために使用されます。商品名、画像、説明、現在の入札価格などの情報。

以下は簡単なアイテム リスト表示コードの例です:

<?php
$conn = mysqli_connect("localhost","root","root","db_name");
// 检查连接是否成功
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    exit();
}

// 查询物品信息
$sql = "SELECT * FROM item";
$result = mysqli_query($conn, $sql);

// 输出物品列表
while($row = mysqli_fetch_assoc($result)) {
    echo "物品名称:" . $row['title'] . "<br>";
    echo "物品图片:<img src="" . $row['image'] . ""><br>";
    echo "物品描述:" . $row['description'] . "<br>";
    echo "当前竞价价格:" . $row['price'] . "<br><br>";
}

mysqli_close($conn);
?>
ログイン後にコピー
  1. アイテム入札

アイテム入札機能を使用すると、ユーザーは公開されたアイテムに入札できます。ユーザーは入札価格を入力し、データベースに保存できます。

以下は簡単な商品入札コード例です:

<?php
session_start();

// 连接数据库
$conn = mysqli_connect("localhost","root","root","db_name");
// 检查连接是否成功
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    exit();
}

// 用户是否登录检查
if (!isset($_SESSION['username'])) {
    echo "请先登录";
    exit();
}

// 获取用户ID
$sql = "SELECT id FROM user WHERE username='{$_SESSION['username']}'";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$user_id = $row['id'];

// 接收物品竞价表单提交的数据
$item_id = $_POST['item_id'];
$bid_price = $_POST['bid_price'];

// 更新物品竞价价格
$sql = "UPDATE item SET price=$bid_price WHERE id=$item_id";
if (mysqli_query($conn, $sql)) {
    echo "竞价成功";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

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

4. まとめ

PHPで開発した中古リサイクルサイトを利用し、ユーザー登録を実装しました。ユーザーログイン、アイテム公開、アイテム一覧表示、アイテム入札などの機能。上記のコード例は単なる単純な実装であり、実際のニーズに応じて変更および拡張できます。この記事が、PHP 開発の学習や中古リサイクル Web サイトの構築に役立つことを願っています。

以上がPHPで開発した中古リサイクルサイトがオンライン入札機能に対応の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート