Autenticazione semplice tramite database in PHP

Implementiamo l'autenticazione più semplice basata su database, per ora senza registrazione. Invece della registrazione degli utenti, inseriremo semplicemente i loro login e password in una tabella nel database:

users
id login password
1 user 12345
2 admin 123

Creiamo ora un modulo in cui verranno inseriti il login e la password:

login.php<form action="" method="POST">
  <input name="login">
  <input name="password" type="password">
  <input type="submit">
</form>

Scriviamo ora il codice che controllerà se il modulo è stato inviato e, in caso affermativo, controllerà se nel database esiste un utente con tale login e password:

login.php<?php
  if (!empty($_POST['password']) and !empty($_POST['login'])) {
    $login = $_POST['login'];
    $password = $_POST['password'];
    
    $query = "SELECT * FROM users WHERE login='$login' AND password='$password'";
    $res = mysqli_query($link, $query);
    $user = mysqli_fetch_assoc($res);
    
    if (!empty($user)) {
      // utente autenticato
    } else {
      // login o password errati
    }
  }
?>
Задание 1

Implementate l'autenticazione descritta sopra. Fate in modo che, se l'utente ha superato l'autenticazione - venga visualizzato un messaggio in merito, e se non l'ha superata - un messaggio che indica che il login o la password inseriti non sono corretti.

Задание 2

Modificate il codice in modo che in caso di autenticazione riuscita il modulo per l'inserimento della password e del login non venga mostrato sullo schermo.

Задание 3

Modificate il codice in modo che in caso di autenticazione riuscita venga effettuato un reindirizzamento alla pagina index.php.

Задание 4

Modificate il codice in modo che sulla pagina index.php venga visualizzato un messaggio sull'autenticazione riuscita. Risolvete il problema tramite messaggi flash sulle sessioni.