witam mam pewiem problem mam skrypt wylogowania i gdy się wyloguje to wszystko dobrze tylko na stronie dla zalogowanych wyswietla się to co powinno sie wyswietlic dla zalogowanego :( nizej podaje skrypt wyloguj
<?php session_start(); $_SESSION['logged'] = false; $_SESSION['user_id'] = -1; header('Location: index.php'); ?>a gdzieś kończysz sesje?
hmm
session_start();
session_unset();
session_destroy();
header('Location: index.php');
Po header
wpisz die()
-- inaczej wyślesz dalszą treść przed przekierowaniem, i jak ktoś wyłączy sobie zezwolenie na przekierowania - to ją odczyta.
nie żeby coś ale niszczenie sesji to fatalny pomysł np jeżeli masz zapisane dane do sesji to je zniszczysz i przy ponownym logowaniu znowu user musi je ustawiać może być to np język strony albo styl strony lub koszyk sklepu... czy co tam chcesz... no chyba że najeb**eś tych danych do sql'a i napiepszasz zapytaniami do bazy... jeżeli to jest jakaś mała twoja stronka to spoko sposób kolegów styknie, ale jak już coś robisz to porządnie bo ci się jakiś scriptkid wbije i rozpieprzy stronę. Osobiście polecałbym poprawić kody aby sprawdzały poziom dostępu do treści (niezalogowany/zalogowany/adm itd).
co ty opowiadasz @proqix ?! Posty piszemy na trzeźwo..
po wylogowaniu nie jest złym pomysłem zniszczyć sesję, skoro danych nie potrzebujemy, koszyk i ustawienia języka to i tak w samej sesji się nie trzyma, bo sesja jest ulotna, wrócisz za godzinę (wiem, że to zależy od konfiguracji serwera) i nie masz koszyka czy ustawienia języka. a jedno małe zapytanie do bazy i tak nic nie kosztuje, skoro na odświeżenie strony i tak wykona się ich z 10 (pobranie jakiegoś drzewa strony, treści, ew. zapisanie jakichś logów/statystyk, i masę innych rzeczy, które typowa dynamiczna strona wykonuje co każde odświeżenie) - wczytanie konfiguracji usera jakoś nie wygląda mi na to, żeby miało zajechać serwer o.O
tak dla jednego czy czy nawet 100 nie ma różnicy ale zobacz jak chodzi xcommerce dla 2000 userów, zarypać idzie się