Mam tutaj problem z dwoma dokumentami. Kiedy się zalogujesz, nie możesz się wylogować. Nie wiem dlaczego. Mógłby mi ktoś pomóc?
Fragment kodu index.php<?php
if ($_GET["wylogowany"] == "tak")
{
}
if (!isset($_SESSION['login'])) {
echo '<a href="logowanie.php">Zaloguj</a></br> <a href="rejestracja.php">Zarejestruj</a></br>';
}
if (isset($_SESSION['login'])) {
echo '<a href="logowanie.php?wylogowanie">Wyloguj</a></br> <a href="logowanie.php"s>lo</a>';
}
?>
Fragment kodu strona logowanie.php<?php
if (!isset($_SESSION['login'])) { // dostęp dla niezalogowanego użytkownika
if ($_POST['wyslane']) { // jeżeli formularz został wysłany, to wykonuje się poniższy skrypt
include 'db.php'; // połączenie się z bazą danych
$tabela = 'uzytkownik'; // zdefiniowanie tabeli MySQL
$login = $_POST["login"];
$haslo = $_POST["haslo"];
$haslo = md5($haslo); // szyfrowanie podanego hasła
login='$login' and haslo='$haslo' and status=0");
// jeżeli użytkownik zarejestrował się, a nie aktywował swojego konta, to wyświetla się komunikat
echo '<p>Nie aktywowałeś jeszcze swojego konta. Aby to zrobić, wejdź w swoją skrzynkę odbiorczą, a następnie znajdź wiadmość z linkiem aktywacyjnym i aktywuj swoje konto</p>'; }
// jeżeli wszystko jest dobrze, użytkownik się loguje
login='$login' and haslo='$haslo' and status=1");
$_SESSION["login"] = $informacja["login"];
header('Location: index.php '); } else {
echo '<p>Zostały wprowadzone nieprawidłowe dane</p>'; }
}
// tworzenie formularza HTML
<form action="logowanie.php" method="post">
<input type="hidden" name="wyslane" value="TRUE" />
<p>Login: <input type="text" name="login" /></p>
<p>Hasło: <input type="password" name="haslo" /></p>
<p><input type="submit" value="zaloguj" /></p>
</form>
KONIEC;
} else {
header('Location: / '); // zalogowany użytkownik zostaje przekierowany na stronę główną }
if ($_GET["wylogowanie"] == "tak")
{
// niszczenie sesji użytkownika
<a href="index.php?wylogowany">strona główna</a>';
}
?>