Mysql
 sql >> Baza danych >  >> RDS >> Mysql

if(!isset($_SESSION['username'])) powodujący przekierowanie użytkowników z Verify_login_form.php z powrotem do index.php

Wystarczy, że utworzysz sesję logowania. Oto sztuczka. Za każdym razem, gdy przenosisz się z indeksu do domu, powinieneś sprawdzić, czy sesja logowania istnieje. Jeśli nie, poproś użytkownika o zalogowanie się.

Sprawdź, czy użytkownik jest zalogowany

<?PHP
    session_start();

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

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

Ponownie zaczynamy najpierw sesję PHP. Następna instrukcja IF jest dość złożona. Ale testujemy dwie rzeczy:czy ustawiono sesję użytkownika o nazwie logowanie? Czy ta sesja jest pustym ciągiem?

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

Pierwsza część to:

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

Aby sprawdzić, czy sesja jest ustawiona, możesz skorzystać z wbudowanej funkcji isset. Używamy przed nim operatora NOT. (Operator NOT jest wykrzyknikiem.) Mówimy więc:„JEŚLI sesja NIE jest ustawiona”. Sesja może być ustawiona, ale może zawierać „1”. Musimy również sprawdzić, czy sesja o nazwie login NIE jest pustym ciągiem. Jeśli obie te rzeczy zawiodą, możemy przekierować do strony login.php, ponieważ oznacza to, że użytkownik nie jest zalogowany.

Dla każdej strony w Twojej witrynie, jeśli masz powyższy skrypt u góry strony, przekieruje on użytkownika, jeśli nie jest on zalogowany. W ten sposób możesz chronić swoje strony przed osobami niebędącymi członkami. Jeśli są zalogowani, będą mogli przeglądać stronę.

WylogowanieJeżeli spojrzysz na kod dla logout.php, zobaczysz:

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

To wszystko, czego potrzebujesz, aby wylogować użytkownika:rozpoczynasz sesję, a następnie wydajesz polecenie session_destroy. Wszystko czego potrzebujesz to link do tej strony z dowolnego miejsca w witrynie. Link będzie wyglądał mniej więcej tak, jak Twój kod HTML:

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

Gdy użytkownik kliknie ten link, zostanie przeniesiony na stronę z kodem, który niszczy sesję.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jednorożce pożerają połączenia MySQL, nie przestrzegając wielkości puli - Rails

  2. Recenzja produktu — gwiezdna naprawa bazy danych MySQL

  3. SQL:Znajdź następny wiersz w klauzuli WHERE o podanym identyfikatorze

  4. Jak usunąć wiodące i końcowe znaki w MySQL?

  5. Problem z wartością domyślną MySQL