![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 8.07.2005 Skąd: EU Ostrzeżenie: (0%) ![]() ![]() |
Witam
borykam sie oto z takim problemem, kod skryptu jest następujący:
wszystko dziala tak jak powinno tzn. podaje nazwe uzytkownika i po poprawnym jej wprowadzeniu zostaje przeniesiony do strony index.php i widze napis jestes zalogowany jako: uzytkownik1 chodzi mi o to ze chcac otworzyc plik index.php bez uprzedniego zalogowania powinienem ujzec napis zakaz wstępu niestety tak sie nie dzieje pojawia mi sie text jestes zalogowany jako: uzytkownik1 (nazwa uzytkownika z poprzedniej sesji) zmienna register_global jest wylączona chociaz tak samo jest przy jej włączeniu wprowadzilem rowniez session_unset() ale to również nie pomaga. z tego co doczytalem to sesja jest automatycznie niszczona kazdorazowo przy zamykaniu przegladarki a co za tym idzie wszystkie zmienne sesyjne zostaja zresetowane w czym tkwi błąd czy jest ktoś w stanie mi to wyjaśnić? pozdrawiam yalus -------------------- człowiek nie sznurek wszystko wytrzyma
|
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Najpierw usuwasz zmienne sesyjne, potem je tworzysz. Nic dziwnego że są potem one widoczne.
Jak chcesz się ich pozbyć to zrób to po ich utworzeniu. A poza tym do zamknięcie sesji lepiej uzyć session_destroy() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 8.07.2005 Skąd: EU Ostrzeżenie: (0%) ![]() ![]() |
hmm,
chodzi o to ze uzywajac session_unset() mam na celu wyzerowanie wszystkich zmiennych przed ich ustawieniem a co do mojego pytania to nie jestem pewien czy je zrozumiales, chodzi mi o to ze logujac sie na strone index.php poprzez plik login.php musze podac prawidlowa nazwe uzytkownika w wyniku czego do zmiennej authuser zostaje przypiasna wartosc 1 nastepnie zostaje przekierowany do strony index.php gdzie odpowiednia funkcja sprawdza czy zmienna authuser jest ustawiona jezeli nie to nie mam prawa przegladac tej strony. jezeli wszystko poszlo ok wchodze na stronke i ogladam jej zawartosc itp. i teraz: zamykam wszystki okna przegladarki (sesja powinna zostac zniszczona automatycznie - chyba ze sie myle) nastepnie probuje otworzyc plik index.php (bez uprzedniego logowania) i co sie dzieje, zmienna authuser dalej jest ustawiona na 1 i moge wejsc na strone bez zalogowania sie. jak sie tego pozbyc?? -------------------- człowiek nie sznurek wszystko wytrzyma
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 6.08.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj tak (dodaj plik logout.php):
-------------------- "Tylko myśl dojrzała i jasna daje się wypowiedzieć w słowach prostych" - prof. Witold Doroszewski
Warsztat: os: Windows XP, serwer: Apache 2.0.55, php: 5.1.4, baza danych: MySQL 4.1.7. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 209 Pomógł: 0 Dołączył: 17.05.2002 Skąd: lodz Ostrzeżenie: (0%) ![]() ![]() |
a jak zrobic session_destroy() (albo wogole logout) przy zamknieciu okna przegladarki?
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%) ![]() ![]() |
Nie da sie- byly juz o tym dyskusje.
-------------------- Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 196 Pomógł: 2 Dołączył: 17.01.2004 Skąd: Sosnowiec Ostrzeżenie: (0%) ![]() ![]() |
Przy zamknięciu przeglądarki (o ile ciacho sesji miało ustawiony odpowiedni czas żywotności) dostęp do sesji jest tracony więc po co kombonować z session_destroy()... Wystraczy tylko poczekać aż garbage collector pokasuje pozostałości...
-------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 209 Pomógł: 0 Dołączył: 17.05.2002 Skąd: lodz Ostrzeżenie: (0%) ![]() ![]() |
a o co dokladnie chodzi z session_cache_expire(minuty) z tego co czytam ustawia sie tu zywotnosc sesji, jednak jak wpisalem session_cache_expire(1); to sesja nie zdezaktualizowala sie po minucie....
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 23:25 |