Проблема в том, что ваша форма публикуется непосредственно в log.txt и не обрабатывает ваш PHP после отправки формы. Вам нужно изменить действие, чтобы опубликовать сам файл PHP, а затем с помощью http_redirect перенаправить пользователя в файл log.txt после проверки пароля.
Сказав, что он по-прежнему не будет очень безопасным, так как любой может получить доступ к log.txt с помощью прямого URL-адреса, вам потребуется выполнить некоторую авторизацию там. Лучше всего, вероятно, сохранить log.txt в месте, недоступном по HTTP, а затем загрузить и отобразить файл, используя readfile вместо вашего эха:
<code><form action="" method="post">
Username:<input type="text" name="user"/> <br />
Password:<input type="password" name="pass"/><br />
<input type="submit" value="View Logs!"/><br />
</form>
<?php
$user = $_POST['user'];
$pass = $_POST['pass'];
if (($user == "php") && ($pass == "student")) {
echo '<pre>';
readfile('log.txt');
echo '
';
}
еще {
echo "
Доступ запрещен! ";
}
?>