変数の保持に問題があります。フォームを送信すると、変数がデフォルトにリセットされると思います。そのため、「Go Away! Hacker!」と表示される前にログイン試行を 3 回に制限する方法がわかりません。phpだけを使用するだけで、他には何もありません。誰にも手がかりがありますか?セキュリティについて心配する必要はありません。これは私の教授が私たちに与えた演習の単なる例であり、php だけで実行する必要があるからです。ハッカーが Cookie をリセットする心配はありません。
注: XAMPP を使用して、php を localhost で動作させるだけです。
PHPのコードは次のとおりです。
<center><form action="" method="post"><br>
User ID: <input type="text" name="id"><br>
Password: <input type="password" name="pass"><br>
<input type="submit" name="submit" value="login">
</form>
<?php
if(isset($_POST['submit'])){
$counter = 0;
$counter++;
$vid = 'hanzo';
$vpass = '123456';
$id = $_POST['id'];
$pass = $_POST['pass'];
$c = "<center>";
if(empty($id)) echo "$c Please Input Username.<br>";
else if(empty($pass)) echo "$c Please Input Password.<br>";
else if($vid==$id && $vpass==$pass) echo "$c Login Succesfully<br>";
else if($counter>3) echo "$c Go Away! Hacker!<br>";
else echo "$c Invalid Username/Password<br> Login Attempt: $counter";
}
?>