随着人们的环保意识的提高,二手回收成为了一种常见的渠道。为了确保交易的安全和真实性,许多二手交易平台都提供了实名认证的功能。本文将介绍如何利用PHP开发一个支持实名认证查看的二手回收网站。
一、搭建环境
首先,需要搭建一个PHP开发环境,包括一个PHP解释器和一个Web服务器。可以选择安装XAMPP或者WampServer等集成环境。在本文中,我们以XAMPP为例。
二、创建数据库
立即学习“PHP免费学习笔记(深入)”;
接下来,我们需要创建一个数据库,用于存储用户信息和商品信息。可以使用MySQL数据库管理系统进行创建。
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代码
<?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><?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><?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>四、实名认证查看功能
ALTER TABLE `users` ADD `verified` TINYINT(1) NOT NULL DEFAULT '0' AFTER `realname`;
... // 查询数据库,获取已经通过实名认证的用户的商品信息 $sql = "SELECT * FROM products WHERE owner_id IN (SELECT id FROM users WHERE verified=1)"; ...
<?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中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号