使用 txt 文件进行身份验证的登录脚本



我想使用文本文件用NoSQL制作一个简单的登录脚本。 目前,用户凭据存储在代码中,我无法将其存储在外部。

我的代码:

<?php
$error = "";
if(isset($_POST['username'],$_POST['password'])){
$user = array(
"user" => "demo",
"pass"=>"demo"          
);
$username = $_POST['username'];
$pass = $_POST['password'];
if($username == $user['user'] && $pass == $user['pass']){
session_start();
$_SESSION['simple_login'] = $username;
header("Location: home.php");
exit();
}else{
$error = '<div class="alert alert-danger">Invalid Login</div>';
}
}
?>

任何建议不胜感激,谢谢!

因为OP已经说安全性不是问题,所以他/她可以使用此代码。
但是此代码不应在实时网页上使用,因为它有许多安全漏洞。

可以使用 file_get_contents(( 读取文本磁贴。
在我的示例中,我使用,作为用户名和密码之间的分隔符,因此我可以用,来分隔它们。
我使用 array_combine(( 创建与使用关联命名键相同的数组。
说够了...

<?php
$error = ""; 
if (isset($_POST['username'],$_POST['password'])){
$arr = array("user", "pass");
$file_data = file_get_contents("path_and_filename.txt");
$user = array_combine($arr, explode(",", $file_data));
/*$user = array(
"user" => "demo",
"pass"=>"demo"          
);*/
$username = $_POST['username'];
$pass = $_POST['password'];
if($username == $user['user'] && $pass == $user['pass']){
session_start();
$_SESSION['simple_login'] = $username;
header("Location: home.php");
exit();
}else{
$error = '<div class="alert alert-danger">Invalid Login</div>';
}
}
?>

上述代码工作的示例文本文件。

demo,demo

..

//username,password

请注意,和单词之间没有空格。

相关内容

最新更新