Aktywne Wpisy
mateo2111 +84
Dlaczego nikt nie wymusza ograniczenia prędkości samochodów przez producentów? Po co w ogóle samochodom możliwość jazdy z prędkościami 200kmh+ nie licząc prądu wyjątków to maksymalna dopuszczalna prędkość na świecie to jakieś 150kmh. Przecież taka zmiana mocno zredukowała by ilość śmiertelnych wypadków tak jak na A1 jakby kierowcy mogli jechać maksymalnie te 160kmh
#wypadek #samochody
#wypadek #samochody
moll +185
Aktywne Znaleziska
Zawiera treści 18+
Ta treść została oznaczona jako materiał kontrowersyjny lub dla dorosłych.
$SESSION['user'] = $POST['username'];
Po zalogowaniu jest dostęp do kolejnych podstron gdzie jest
if(isset($SESSION['user'])) ....
Mam przycisk wylogowania, który robi takie rzeczy:
sessionstart();
$SESSION=array();
sessiondestroy();
i przekierowuje na stronę logowania, spoko. Tylko czemu nadal mogę sobie hasać po podstronach i tam widzi sesję jakby nadal była aktywna? Jak to zrobić zgodnie ze sztuką? #kiciochpyta #it #php
pozatym printr($_SESSION); twoim przyjacielem
session_start()
iarray
? To oddzielny plik?jeśli chcesz kogoś wylogować to wystarczy samo
session_destroy();
dodatkowo jakieś przekierowanie i to wszystko,
jeśli wywaliłeś sesje i w innym miejscu sprawdzasz czy dana wartość w sesji istnieje a nadal widzisz content który powinien być ukryty dla niezaleogowanych, to coś w sprawdzaniu spierniczyłeś.
unset($_SESSION['user']);
Bo po co niszczyć wszystko inne w sesji, co przydatne?
Poza tym masz nieprawidłowe nazwy funkcji i zmiennych globalnych.
@poszlo_wyszlo: posprawdzam
Wyloguj
logout.php:
php
sessionstart();
sessiondestroy();
header('Location: index.php');
exit;
?
to działa.
A chciałem tak jakoś kulturalnie w jednym pliku mieć, w ten sposób:
....
<?php if(isset($POST['logout'])){
unset($SESSION['user']);
}
....
to tej sesji nie kończył jakby. Warum warum? Jestem phpowa lamka, nie bijcie jak poważnego babola zrobiłem :D
Po drugie... jak może działać sessionstart() i sessiondestroy(), skoro takie funkcje nie istnieją w PHP?
http://pastebin.com/XDezUb5W
Zakładamy, że się zaloguję, wszystko jest ok. Otwieram sobie podstronę w nowej karcie, a tą pierwszą główną zamykam. Wchodzę ponownie na tą główną i nadal mi się wyświetla formularz do logowania, pomimo, że teoretycznie nie nastąpiło ubicie sesji?
I to chyba wszystko. No chyba, że mi się coś jeszcze przypomni :)
php
sessionstart();
$SESSION['url']=$SERVER['REQUESTURI'];
$log=$SERVER['DOCUMENTROOT'].'/logfile.log';
?
I robię sobie na samym początku każdej strony
include($SERVER['DOCUMENTROOT'].'/config.php');
żeby po kliknięciu na podstronę, a nie będąc zalogowanym wyświetlił się komunikat o przekierowaniu do strony logowania. Po zalogowaniu powinno przenieść na poprzednią stronę. Po poprawnym zalogowaniu mam takie sprawdzanie:
if(isset($SESSION['url']))
{
$url = $SESSION['url'];
}
include, include_once, require itp. to nie funkcje tylko instrukcje, więc nie stosuj nawiasów.
Obstawiam, że jeśli przekierowałeś użytkownika do strony logowania, którą prawdopodobnie jest index.php i również wczytuje config, to na tej stronie do $_SESSION['url'] trafia index.php który po zalogowaniu przekierowuje z powrotem na ostatnio odwiedzoną stronę. W tym configu powinieneś sprawdzić czy jesteś na stronie logowania i jeśli tak, to nie nadpisywać zmiennej sesji.