Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] [HTML] Zamykanie sesji https + czyszczenie danych przeglądarki
Forum PHP.pl > Forum > Przedszkole
Sebaa
Witam.
Proszę o pomoc.
Zrobiłem sobie prosty panel admina w (html + wstawki php) dla usług na moim serwerze. Panel dostępny jest w połączeniu szyfrowanym. Chciałbym dorobić w nim opcje wylogowywania się wraz z czyszczeniem danych przeglądarki, gdyż w tym momencie jeśli zamknę okno z panelem i ponownie go wywołam (wpisując odpowiedni adres w pasku przeglądarki) przeglądarka nie pyta ponownie o hasło dostępu tylko wchodzi od razu do panelu. Czy ktoś mógłby mnie oświecić jak się zabrać za coś takiego ?
Pozdrawiam serdecznie.
Kszyhuu
Zniszcz sesję i ciastko. Sesję niszczysz poprzez:

a ciastko poprzez danie mu ujemnego czasu istnienia, czyli:
  1. setcookie("user", "", time()-3600);
Sebaa
Cytat(Kszyhuu @ 12.10.2009, 20:01:20 ) *
Zniszcz sesję i ciastko. Sesję niszczysz poprzez:

a ciastko poprzez danie mu ujemnego czasu istnienia, czyli:
  1. setcookie("user", "", time()-3600);


Dziękuję. Wykorzystałem przykład ze strony
http://ca.php.net/manual/pl/function.session-destroy.php
i umieściłem go w pliku exit.php

Przykład #1 Niszczenie sesji przy użyciu $_SESSION
<?php
// Inicjalizuj sesję
// Jeśli używasz sesion_name("cośtam"), nie zapomnij o tym teraz!
session_start();
// Usuń wszystkie zmienne sesyjne
$_SESSION = array();

// Jeśli pożądane jest zabicie sesji, usuń także ciasteczko sesyjne.
// Uwaga: to usunie sesję, nie tylko dane sesji
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}

// Na koniec zniszcz sesję
session_destroy();
?>

otrzymuje jednak komunikat
Fatal error: Call to undefined function session_start() in exit.php on line 5

jesli w pliku znajdują się wyłącznie polecenia
session_destroy();
setcookie("user", "", time()-3600);

otrzymuje komunikat
Fatal error: Call to undefined function session_destroy() in exit.php on line 3

Albo coś robię źle albo mój serwer (lighttpd - 1.4.19-2) nie obsługuje tych poleceń


wolacinio
wg.mnie nie ma czegos takiego albo jest ale php trzeba miec na wysokim poziomie ale za kazdym razem jak sie zalogujesz musisz sie wylogowac to w tedy po co ci bedzie czyszczenie ?
Sebaa
Cytat(wolacinio @ 12.10.2009, 21:50:16 ) *
wg.mnie nie ma czegos takiego albo jest ale php trzeba miec na wysokim poziomie ale za kazdym razem jak sie zalogujesz musisz sie wylogowac to w tedy po co ci bedzie czyszczenie ?

Ja się w zasadzi nie loguje tylko uzyskuję dostęp do strony dzięki wpisaniu użytkownika i hasła. Jest to usługa serwera a nie wykonanie skryptu logowania. Chciałbym po prostu w jakiś sposób wyczyścić dane o tej sesji przechowywane w przeglądarce. By po probie ponownego wywołania strony z panelem znów pytał o hasło.
Kszyhuu
Usuwasz nieistniejącą sesję. Pokaż cały skrypt.
jmail
lol? to jest Twój serwer? brak funkcji sesyjnych oznacza albo błędną instalację albo błędną konfigurację php. Jak to Twój serwer (jesteś adminem) to musisz poprawic instalację PHP. Jeżeli to nie twój serwer tylko dzierżawisz (na przykłąd virtual) to daj znać o tym błędzie koniecznie adminowi.

Co to w ogóle za serwer WWW? na jakim PHP stoi? itp.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.