PHP代码:从txt文件获取多组密码和有效期,并检查输入的密码是否在有效期内

    以下是修改后的代码,用于从txt文件获取多组密码和有效期,并检查输入的密码是否在有效期内:

    1. 会员登录

    在网站的登录页面中,您可以添加以下表单:

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

    2. check_login.php

    在check_login.php文件中,您可以添加以下代码:

    <?php
    // 从txt文件获取密码及有效期
    $passwords_file = "passwords.txt";
    $passwords_data = file_get_contents($passwords_file);
    $passwords_array = explode("\n", $passwords_data);
    // 获取用户输入的用户名和密码
    $username = $_POST["username"];
    $password = $_POST["password"];
    // 检查密码是否在有效期内
    foreach ($passwords_array as $password_info) {
      $password_info_array = explode("|", $password_info);
      $password_in_file = $password_info_array[0];
      $expiration_date = strtotime($password_info_array[1]);
      $today = strtotime(date("Y-m-d"));
      if ($password_in_file == $password && $expiration_date >= $today) {
        // 登录成功
        echo "登录成功!";
        break;
      }
    }
    // 登录失败
    echo "登录失败!";
    ?>

    3. passwords.txt

    在passwords.txt文件中,您可以添加以下内容:

    password1|2022-01-01
    password2|2022-02-01
    password3|2022-03-01

    每一行表示一个密码及其有效期,密码和有效期之间用“|”符号隔开。在上面的示例中,password1的有效期为2022年1月1日,password2的有效期为2022年2月1日,password3的有效期为2022年3月1日。