首頁 >後端開發 >php教程 >利用PHP開發的二手回收網站支援實名認證查看

利用PHP開發的二手回收網站支援實名認證查看

WBOY
WBOY原創
2023-07-01 23:33:51689瀏覽

利用PHP開發的二手回收網站支援實名認證檢視

隨著人們的環保意識的提高,二手回收成為了常見的管道。為了確保交易的安全性和真實性,許多二手交易平台都提供了實名認證的功能。本文將介紹如何利用PHP開發一個支援實名認證檢視的二手回收網站。

一、建置環境

首先,需要建置一個PHP開發環境,包含一個PHP解譯器和一個Web伺服器。可以選擇安裝XAMPP或WampServer等整合環境。在本文中,我們以XAMPP為例。

  1. 下載並安裝XAMPP,可從官網(https://www.apachefriends.org/zh_cn/index.html)下載最新版本。
  2. 安裝完成後,開啟XAMPP控制面板,啟動Apache伺服器和MySQL資料庫。
  3. 在瀏覽器中輸入localhost,如果出現XAMPP歡迎頁面,表示環境建置成功。

二、建立資料庫

接下來,我們需要建立一個資料庫,用於儲存使用者資訊和商品資訊。可以使用MySQL資料庫管理系統進行建立。

  1. 開啟瀏覽器,輸入localhost/phpmyadmin,進入phpMyAdmin管理介面。
  2. 點選"新建"按鈕,輸入資料庫名稱,例如"recycle"。
  3. 進入"recycle"資料庫,點選"SQL"選項卡,輸入下列SQL語句建立使用者表與商品表:
CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `realname` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `products` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `price` decimal(10,2) NOT NULL,
  `owner_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  FOREIGN KEY (`owner_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

三、寫PHP程式碼

  1. #建立一個名為"index.php"的文件,用於使用者登入和註冊。
<?php
session_start();

// 登录功能
if(isset($_POST['login'])) {
    $username = $_POST['username'];
    $password = $_POST['password'];
    
    // 查询数据库中是否存在该用户,并验证密码是否正确
    // $conn为数据库连接对象
    $conn = mysqli_connect("localhost", "root", "", "recycle");
    $sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
    $result = mysqli_query($conn, $sql);
    $row = mysqli_fetch_assoc($result);
    
    if($row) {
        // 用户存在,保存用户信息到session中
        $_SESSION['user'] = $row;
        header("Location: home.php");
    } else {
        echo "用户名或密码错误!";
    }
}

// 注册功能
if(isset($_POST['register'])) {
    $username = $_POST['username'];
    $password = $_POST['password'];
    $realname = $_POST['realname'];
    
    // 在数据库中插入新用户信息
    $conn = mysqli_connect("localhost", "root", "", "recycle");
    $sql = "INSERT INTO users (username, password, realname) VALUES ('$username', '$password', '$realname')";
    mysqli_query($conn, $sql);
    
    echo "注册成功!";
}
?>

<h1>登录</h1>
<form method="post" action="">
    <label for="username">用户名:</label>
    <input type="text" name="username" id="username" required><br>
    <label for="password">密码:</label>
    <input type="password" name="password" id="password" required><br>
    <input type="submit" name="login" value="登录">
</form>

<h1>注册</h1>
<form method="post" action="">
    <label for="username">用户名:</label>
    <input type="text" name="username" id="username" required><br>
    <label for="password">密码:</label>
    <input type="password" name="password" id="password" required><br>
    <label for="realname">真实姓名:</label>
    <input type="text" name="realname" id="realname" required><br>
    <input type="submit" name="register" value="注册">
</form>
  1. 建立一個名為"home.php"的文件,用於展示使用者的商品資訊。
<?php
session_start();

// 判断用户是否登录
if(!isset($_SESSION['user'])) {
    header("Location: index.php");
}

// 查询数据库,获取当前用户的商品信息
$conn = mysqli_connect("localhost", "root", "", "recycle");
$sql = "SELECT * FROM products WHERE owner_id={$_SESSION['user']['id']}";
$result = mysqli_query($conn, $sql);
?>

<h1>欢迎,<?php echo $_SESSION['user']['realname']; ?></h1>

<h2>我的商品</h2>
<table>
    <tr>
        <th>名称</th>
        <th>价格</th>
    </tr>
    <?php while($row = mysqli_fetch_assoc($result)) { ?>
        <tr>
            <td><?php echo $row['name']; ?></td>
            <td><?php echo $row['price']; ?></td>
        </tr>
    <?php } ?>
</table>

<a href="add_product.php">发布新商品</a>
<a href="logout.php">退出登录</a>
  1. 建立一個名為"add_product.php"的文件,用於發布新商品。
<?php
session_start();

// 判断用户是否登录
if(!isset($_SESSION['user'])) {
    header("Location: index.php");
}

// 发布新商品
if(isset($_POST['submit'])) {
    $name = $_POST['name'];
    $price = $_POST['price'];
    $owner_id = $_SESSION['user']['id'];
    
    // 在数据库中插入新商品信息
    $conn = mysqli_connect("localhost", "root", "", "recycle");
    $sql = "INSERT INTO products (name, price, owner_id) VALUES ('$name', '$price', $owner_id)";
    mysqli_query($conn, $sql);
    
    echo "发布成功!";
}
?>

<h1>发布新商品</h1>
<form method="post" action="">
    <label for="name">名称:</label>
    <input type="text" name="name" id="name" required><br>
    <label for="price">价格:</label>
    <input type="number" step="0.01" name="price" id="price" required><br>
    <input type="submit" name="submit" value="发布">
</form>

<a href="home.php">返回首页</a>
<a href="logout.php">退出登录</a>

四、實名認證檢視功能

  1. 在"users"表中新增一個"verified"字段,用於記錄實名認證狀態。
ALTER TABLE `users` ADD `verified` TINYINT(1) NOT NULL DEFAULT '0' AFTER `realname`;
  1. 修改"home.php"檔案的商品展示程式碼,只顯示已經通過實名認證的使用者發佈的商品。
...
// 查询数据库,获取已经通过实名认证的用户的商品信息
$sql = "SELECT * FROM products WHERE owner_id IN (SELECT id FROM users WHERE verified=1)";
...
  1. 新增一個名為"verify.php"的文件,用於進行實名認證操作。
<?php
session_start();

// 判断用户是否登录
if(!isset($_SESSION['user'])) {
    header("Location: index.php");
}

// 实名认证操作
if(isset($_POST['submit'])) {
    $realname = $_POST['realname'];
    
    // 更新用户表中的实名认证状态和真实姓名
    $conn = mysqli_connect("localhost", "root", "", "recycle");
    $sql = "UPDATE users SET verified=1, realname='$realname' WHERE id={$_SESSION['user']['id']}";
    mysqli_query($conn, $sql);
    
    echo "实名认证成功!";
}
?>

<h1>实名认证</h1>
<form method="post" action="">
    <label for="realname">真实姓名:</label>
    <input type="text" name="realname" id="realname" required><br>
    <input type="submit" name="submit" value="认证">
</form>

<a href="home.php">返回首页</a>
<a href="logout.php">退出登录</a>

至此,我們已經完成了一個利用PHP開發的支援實名認證查看的二手回收網站。用戶可以在登入或註冊時進行實名認證,並且只有通過實名認證的用戶才能發布和查看商品資訊。

要注意的是,為了簡化範例,我們沒有進行使用者輸入驗證和防止SQL注入等安全措施。在實際開發中,這些安全問題必須要考慮和解決。

希望本文能為想要開發一個支援實名認證檢視的二手回收網站的開發人員提供一些幫助。不斷優化和改進網站的功能,不僅可以增加使用者的使用體驗,也能提高使用者的安全感和信任度。

以上是利用PHP開發的二手回收網站支援實名認證查看的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn