以下是一个稍微复杂的 PHP 脚本示例,用于创建一个简单的用户管理系统,包括用户注册、登录和注销功能。这个示例涉及到数据库操作和会话管理,是一个常见且较为完整的功能。
**注意:** 请确保在使用类似于以下示例的代码时,对安全性和数据验证进行适当处理,并遵循最佳实践,如预防 SQL 注入、XSS 攻击等。
```php
<?php
// 数据库连接信息
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
// 创建数据库连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("数据库连接失败: " . $conn->connect_error);
}
// 启动会话(如果尚未启动)
session_start();
// 注册新用户
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['register'])) {
$username = $_POST['username'];
$password = $_POST['password'];
// 插入用户数据到数据库
$sql = "INSERT INTO users (username, password) VALUES ('$username', '$password')";
if ($conn->query($sql) === TRUE) {
echo "注册成功";
} else {
echo "注册失败: " . $conn->error;
}
}
// 用户登录
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) {
$username = $_POST['username'];
$password = $_POST['password'];
// 查询数据库验证用户
$sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$result = $conn->query($sql);
if ($result->num_rows == 1) {
$_SESSION['username'] = $username;
echo "登录成功,欢迎 " . $username;
} else {
echo "登录失败,用户名或密码错误";
}
}
// 用户注销
if (isset($_POST['logout'])) {
session_unset();
session_destroy();
echo "注销成功";
}
// HTML 表单
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>User Management System</title>
</head>
<body>
<h2>用户注册</h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
<input type="text" name="username" placeholder="用户名" required><br>
<input type="password" name="password" placeholder="密码" required><br>
<input type="submit" name="register" value="注册">
</form>
<h2>用户登录</h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
<input type="text" name="username" placeholder="用户名" required><br>
<input type="password" name="password" placeholder="密码" required><br>
<input type="submit" name="login" value="登录">
</form>
<h2>用户注销</h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
<input type="submit" name="logout" value="注销">
</form>
</body>
</html>