私は、他のものの中でも、名前、パスワードを含むいくつかの情報を含むtxtファイルを持っています。フォームの送信から、パスワードが名前と一致するかどうかを確認する必要があります。実際にはtxtファイルを吸いますが、これは機能します。
function checkPassword($password, $username){
$userinfo = file_get_contents(USER_INFO);
$uniqueinfo = explode("-", $userinfo);
if (in_array($password, $uniqueinfo) && in_array($username, $uniqueinfo)) {
return true;
} else {
return false;
}
}
さて、おそらくご想像のとおり、同じアカウントに属していない場合でも、有効なユーザー名とパスワードが見つかっている限り、これはtrueを返します。したがって、別のアカウントからパスワードを入力した場合、これをtrueに戻すことができます。良くない。だから、私は試しました:
function checkPassword($password, $username){
$userinfo = file_get_contents(USER_INFO);
foreach($userinfo as $uniqueinfo) {
$uniqueinfo = explode("-", $uniqueinfo);
if (in_array($password, $uniqueinfo) && in_array($username, $uniqueinfo)) {
return true;
} else {
return false;
}
}
}
しかし、これは有効なクレデンシャルがあってもfalseを返すだけです。ここでどこが間違っているのかわからないので、助けていただければ幸いです。ありがとう。