PHP读取txt文件并检查用户名密码是否存在

2024-01-05

我有一堆密码和用户名存储在一个 txt 文件中,我需要检查是否匹配。我知道这不是一个安全的方法,但它是为了学习的目的。

此代码将用户名和密码写入 txt 文件

  if(isset($_POST['register'])) //  
   {
    $user  = $_POST['username'];
    $password=$_POST['password'].PHP_EOL;
    $fh = fopen("file.txt","a+");
    fwrite($fh,$user." ".$password); //write to txtfile

    fclose($fh);
 }

这是我遇到问题的代码。

用户名和密码在结果中像这样存储

      username1 passwords1 username2 password2 etc. 

所以我需要检查 result[0] = userinput 是否存在,以及检查 result[1] = userinput 是否存在,等等。

   if(isset($_POST['Logg']))
   {
   //$_SESSION['username']=$user; 
   //$_SESSION['password']=$password;

    $file = file_get_contents("file.txt"); // Returns a string

    $result = explode(" ",$file);
    $boolC= false;

    for($i=0; $i< count($result); $i++)
    {
   if($result[$i] === $user)
   {
    $boolC=true;
    $i =$i+1; 
    if($boolC === true)
    {
        if($result[$i]===$password)
        {
            echo 'Password and Username Correct';
        }
    }

   }
     }

  }

考虑密码中可能存在空格以及任何符号。也许您应该在换行符(“\n”)上进行分割。

if( $result[$i] === $user && $result[$i+1] === $password )

陈述的第一部分必须为真才能评估第二部分。 $i 变量永远不会改变

$file = "username1 passwords1 username2 password2";
$result = explode(" ",$file);
$user = "username1";
$password = "passwords1";

for($i=0; $i< count($result); $i++){

    if($result[$i] === $user && $result[$i+1] === $password)
    {

        echo 'Password and Username Correct';
   }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP读取txt文件并检查用户名密码是否存在 的相关文章

随机推荐