Home >Backend Development >PHP Tutorial >A second-hand recycling website developed using PHP supports virtual commodity transactions
Using PHP to develop a second-hand recycling website to support virtual commodity transactions
With the increasing awareness of environmental protection and the increasing consumption of goods, the second-hand trading market has gradually emerged. In order to facilitate people to buy and sell second-hand goods, many second-hand recycling websites have been developed. Not only can it display product information, but it can also conduct buying and selling transactions. With the rise of virtual goods, current second-hand recycling websites also need to support virtual goods transactions accordingly. In this article, I will introduce how to use PHP to develop a second-hand recycling website that supports virtual goods trading.
1. Project preparation
Before starting, we need to prepare the following tools and resources:
2. Establish a database
First, we need to create a database to store product and user information. We can use the MySQL database to create a database named "secondhand", and then create the following two tables in it:
CREATE TABLE `products` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) NOT NULL, `description` TEXT, `price` DECIMAL(10, 2) NOT NULL, `image` VARCHAR(100), PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `users` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `username` VARCHAR(50) NOT NULL, `password` VARCHAR(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3. Set up the website structure and UI
Next, we need to set up the page structure and user interface of the website. In this example, we will create the following pages:
4. Write PHP code
<?php $host = 'localhost'; $db = 'secondhand'; $user = 'root'; $pass = ''; $conn = new PDO("mysql:host=$host;dbname=$db;charset=utf8", $user, $pass); ?>
<?php include 'config.php'; $stmt = $conn->prepare("SELECT * FROM products ORDER BY id DESC LIMIT 10"); $stmt->execute(); $products = $stmt->fetchAll(); foreach ($products as $product) { // 显示商品信息 } ?>
<?php include 'config.php'; $id = $_GET['id']; $stmt = $conn->prepare("SELECT * FROM products WHERE id = :id"); $stmt->bindParam(':id', $id); $stmt->execute(); $product = $stmt->fetch(); // 显示商品详细信息 ?>
<?php include 'config.php'; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $username = $_POST['username']; $password = $_POST['password']; $stmt = $conn->prepare("SELECT * FROM users WHERE username = :username"); $stmt->bindParam(':username', $username); $stmt->execute(); $user = $stmt->fetch(); if ($user && password_verify($password, $user['password'])) { // 登录成功,将用户信息存储到Session中 $_SESSION['user'] = $user; header('Location: user.php'); } else { // 登录失败 echo '用户名或密码错误'; } } ?>
<?php include 'config.php'; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $username = $_POST['username']; $password = password_hash($_POST['password'], PASSWORD_BCRYPT); $stmt = $conn->prepare("INSERT INTO users (username, password) VALUES (:username, :password)"); $stmt->bindParam(':username', $username); $stmt->bindParam(':password', $password); $stmt->execute(); // 注册成功,将用户信息存储到Session中 $_SESSION['user'] = [ 'id' => $conn->lastInsertId(), 'username' => $username ]; header('Location: user.php'); } ?>
<?php include 'config.php'; if (!isset($_SESSION['user'])) { header('Location: login.php'); exit; } $stmt = $conn->prepare("SELECT * FROM products WHERE user_id = :user_id"); $stmt->bindParam(':user_id', $_SESSION['user']['id']); $stmt->execute(); $products = $stmt->fetchAll(); foreach ($products as $product) { // 显示商品信息 } ?>
The above is just a simple example. In actual development, more functional design and security optimization are required. I hope that through this example, you can understand how to use PHP to develop a second-hand recycling website that supports virtual goods trading. I wish you success!
The above is the detailed content of A second-hand recycling website developed using PHP supports virtual commodity transactions. For more information, please follow other related articles on the PHP Chinese website!