sql >> Databasteknik >  >> RDS >> Mysql

if(!isset($_SESSION['användarnamn'])) som gör att användare omdirigeras från verify_login_form.php tillbaka till index.php

Allt du behöver göra är att skapa en session för inloggningen. Så här är tricket. Varje gång du flyttar från index till hemmet bör du kontrollera om inloggningssessionen finns. Om inte, be användaren att logga in.

Kontrollera om en användare är inloggad

<?PHP
    session_start();

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

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

Återigen startar vi först en PHP-session. IF-utlåtandet som kommer härnäst är ganska komplext. Men vi testar två saker:har en användarsession som heter login ställts in? Och är den här sessionen en tom sträng?

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

Den första delen är denna:

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

För att kontrollera om en session är inställd kan du använda den inbyggda funktionen isset. Vi använder NOT-operatorn före den. (NOT-operatorn är ett utropstecken.) Så vi säger "OM sessionen INTE är inställd". Sessionen kan vara inställd, men kan ha en "1" i den. Vi måste också kontrollera om sessionen som heter login är en INTE tom sträng. Om båda dessa saker misslyckas kan vi omdirigera till sidan login.php, eftersom det betyder att användaren inte är inloggad.

För varje sida på din webbplats, om du har ovanstående skript högst upp på din sida, kommer det att omdirigera en användare om de inte är inloggade. På så sätt kan du skydda dina sidor från icke-medlemmar. Om de är inloggade kommer de att kunna se sidan.

Logga ut Om du tittar på koden för logout.php ser du följande:

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

Detta är allt du behöver för att logga ut en användare:du startar en session och utfärdar sedan kommandot session_destroy. Allt du behöver är en länk till den här sidan från var som helst på din webbplats. Länken skulle vara ungefär så här som din HTML:

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

När användaren klickar på den här länken kommer de att föras till sidan med koden som förstör sessionen.




  1. Vinkelslingan uppdateras inte

  2. Anpassade grafer för att övervaka dina MySQL-, MariaDB-, MongoDB- och PostgreSQL-system - ClusterControl-tips och tricks

  3. Hur fixar man fel som orsakas av att libmysqlclient.15.dylib inte laddas?

  4. Ställ in värde i beroende av rordiagrammet