Mysql
 sql >> Database >  >> RDS >> Mysql

if(!isset($_SESSION['username'])) causa il reindirizzamento degli utenti da verify_login_form.php a index.php

Tutto quello che devi fare è creare una sessione per il login. Quindi ecco il trucco. Ogni volta che ti sposti da index a home, dovresti controllare se la sessione di login esiste. In caso contrario, chiedi all'utente di accedere.

Controlla se un utente ha effettuato l'accesso

<?PHP
    session_start();

    if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) {

        header ("Location: login.php");
    }
?>

Ancora una volta, iniziamo prima una sessione PHP. La dichiarazione IF che viene dopo è piuttosto complessa. Ma stiamo testando due cose:è stata impostata una sessione utente chiamata login? E questa sessione è una stringa vuota?

!(isset($_SESSION['login']) && $_SESSION['login'] != '')

La prima parte è questa:

!(isset($_SESSION['login'])

Per verificare se è impostata una sessione è possibile utilizzare la funzione integrata isset. Stiamo usando l'operatore NOT prima di esso. (L'operatore NOT è un punto esclamativo.) Quindi stiamo dicendo "SE la sessione NON è impostata". La sessione potrebbe essere impostata, ma potrebbe contenere un "1". Dobbiamo anche verificare se la sessione chiamata login è una stringa NON vuota. Se entrambe queste cose falliscono, possiamo reindirizzare alla pagina login.php, poiché significa che l'utente non ha effettuato l'accesso.

Per ogni pagina del tuo sito, se hai lo script sopra nella parte superiore della tua pagina, reindirizzerà un utente se non ha effettuato l'accesso. In questo modo, puoi proteggere le tue pagine dai non membri. Se sono loggati, potranno visualizzare la pagina.

LogoutSe dai un'occhiata al codice per logout.php vedrai quanto segue:

<?PHP
    session_start();
    session_destroy();
?>

Questo è tutto ciò che serve per disconnettere un utente:si avvia una sessione, quindi si esegue il comando session_destroy. Tutto ciò di cui hai bisogno è un link a questa pagina da qualsiasi punto del tuo sito. Il collegamento sarebbe qualcosa di simile al tuo HTML:

<A HREF = logout.php>Log Out</A>

Quando l'utente fa clic su questo collegamento, verrà indirizzato alla pagina con il codice che distrugge la sessione.