一个进阶版的PHP运行程序

以下是一个进阶版的PHP运行程序示例,它使用MySQL数据库来存储和检索数据。该程序实现了用户注册、登录和注销的功能。

<?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);  
}  

// 注册用户  
if (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 (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 > 0) {  
        echo "登录成功!";  
    } else {  
        echo "用户名或密码错误!";  
    }  
}  

// 用户注销  
if (isset($_POST['logout'])) {  
    session_start();  
    session_destroy();  
    header("location: login.php");  
    exit();  
}  

// 在登录页面中使用会话变量存储用户信息  
session_start();  
$_SESSION['username'] = $username;  

// 在其他页面中使用会话变量获取用户信息  
if (isset($_SESSION['username'])) {  
    $username = $_SESSION['username'];  
} else {  
    header("location: login.php");  
    exit();  
}  
?>  
<!DOCTYPE html>  
<html>  
<head>  
    <title>进阶版PHP运行程序</title>  
</head>  
<body>  
    <h2>用户注册</h2>  
    <form method="post" action="">  
        <label for="username">用户名:</label>  
        <input type="text" name="username" required><br><br>  
        <label for="password">密码:</label>  
        <input type="password" name="password" required><br><br>  
        <input type="submit" name="register" value="注册">  
    </form>  
    <br>  
    <h2>用户登录</h2>  
    <form method="post" action="">  
        <label for="username">用户名:</label>  
        <input type="text" name="username" value="<?php echo $username; ?>" required><br><br>  
        <label for="password">密码:</label>  
        <input type="password" name="password" required><br><br>  
        <input type="submit" name="login" value="登录">  
    </form>  
    <br>  
    <h2>注销</h2>  
    <form method="post" action="">  
        <input type="submit" name="logout" value="注销">  
    </form>  
</body>  
</html>

请注意,这只是一个简单的示例,用于演示如何连接数据库、处理用户输入和会话变量。在实际应用中,您需要进一步增强安全性、添加表单验证、防止SQL注入等。此外,还应该使用更强大的密码哈希算法来存储用户密码,并采取其他安全措施来保护用户数据。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 1

这是把 chatgpt 生成的内容直接放上来了?

9个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!