Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Wylogowywanie
WebspyPL
post
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 23.12.2011
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Witam!
Mam problem z wylogowywaniem się ze strony.

logowanie.php wygląda tak
Kod
<?php
ob_start();
session_start(); // rozpoczęcie sesji
?>

<?php include('header.php'); ?>
<div class="content">

<?
include('inc/db.php');
session_start(); //sesje, do logowania
ob_start();  //emulacja headerow


$login = isset($_SESSION['login']) ? $_SESSION['login'] : mysql_escape_string($_POST['login']);  //filtracja zmiennej
$haslo = mysql_escape_string(md5($_POST['pass'])); //filtracja + haszowanie hasla

$zapytanie = mysql_query("SELECT * FROM rejestracja WHERE login = '$login'");  //pobranie rekordow

$dane = mysql_fetch_array($zapytanie);

/* sprawdzamy poprawnosc przeslanych danych */  

if(isset($_POST['login']) && isset($_POST['pass'])) {
if($login ==''.$dane['login'].'' && $haslo ==''.$dane['haslo'].'')
{
        
        $_SESSION['admin']='ok';  //sesja przyjmuje wartosc 'ok' gdy dane z formularza zgadzaja sie z danymi z bazy
        $_SESSION['login']=''.$dane['login'].'';

  setcookie("log" , "log", time()+3600, "/","", 0);  //tworzymy ciastko
  header("Location: index.php"); //przenosimy na strone

}
else { echo 'Logowanie nie powiodło się.'; }  //w przypadku zlych danych
}



if(!isset($_SESSION['admin']) && !isset($_SESSION['login']) && $_SESSION['admin'] != 'ok' && !isset($_POST['submit']) && $_GET['p']!='wyloguj' && !isset($_COOKIE['log']))

{
echo'
<center><h3>Zaloguj się</h3>
<form action="logowanie.php" method="POST">
Login:<input type="text" name="login"><br/>
Hasło:<input type="password" name="pass"><br/>
<input type="submit" name="submit" value="Zaloguj się"></form></center>';


}

if($_SESSION['admin'] == 'ok' && isset($_COOKIE['log']))  //warunek, ktory sprawdza czy sesja ma odpowiednia wartosc oraz czy istnieje ciastko, jest to koniunkcja, wiec bedzie prawdziwa jesli oba warunki zostana spelnione
{


echo 'Jesteś zalgowany jako '.$_SESSION['login'].', <a href="?p=wyloguj">Wyloguj się</a>';

if($_GET['p']=='wyloguj') {



session_destroy(); //kasujemy sesje
setcookie("log" , "log", time()-3600, "/","", 0);  //kasujemy cookies

header("Location: logowanie.php");  //przenosimy na strone logowania

echo 'Zostałeś pomyślnie wylogowany.';

}



}

?>


</div>
<?php include('stopka.php'); ?>


www.nazwaStrony.pl/logowanie.php - logowanie działa prawidłowo.
www.nazwaStrony.pl/logowanie.php?p=wyloguj - przenosi mnie na stronę logowanie.php?p=wyloguj, która jest pusta i nie wylogowywuje.

W czym tkwi problem?

Ten post edytował WebspyPL 24.12.2011, 14:12:10
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.09.2025 - 21:22