ホームページ >バックエンド開発 >PHPチュートリアル >PHP ログイン検証中のコードに問題があります
ユーザー名とアカウントはテキストテキストに保存されていますが、ユーザー名だけを検証しようとしましたが、何が間違っているのかわかりません。 。
$Logi = file ( "users.txt" );
$size = sizeof ( $Logi );
foreach( $Logi as $Key => $Val )
{ $Data [ $Key ] = 爆発 ( "|" , $Val ); }
for( $K = 0 ; $K $user = $Data [ $K ][ 0 ]; $Data [ $K ][ 1 ];
if($user==$_POST[ "user" ]&&$pass==$_POST[ "pass" ])
{
echo "成功" }
else echo
取得された各行には改行文字が含まれます
rtrim() 関数を追加します
$Data [ $Key ] = rtrim($Data [ $Key ] );
file() 関数によって読み取られるすべての行には改行文字が含まれるため
ただし、txt ファイルに yjj|123456 という行を追加しただけで、 $pass = $Data [ 0 ][ 1 ] と出力すれば正しいです
1 階の jzh2004 からの返信を引用: rtrim() 関数を追加します
$pass = $Data [ 0 ][ 1 ] を出力するのが正しいのかわかりません。これは代入ステートメントであり、比較ではありません。
改行文字については、見えませんが、存在しないわけではありません。