PHP/Obsługa ciastek: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
mała poprawka
Zyx (dyskusja | edycje)
m +kolorowanie składni
Linia 1:
{{podświetl|php}}
 
{{prognav|PHP|Podstawy wyrażeń regularnych|Sesje}}
 
Linia 187 ⟶ 189:
Parametr przekazywany do ''ob_start()'' to nazwa tzw. handlera służącego do modyfikacji zbuforowanej treści. ''ob_gzhandler'' jest jednym z predefiniowanych handlerów, zajmującym się właśnie kompresją GZip. Druga z funkcji nakazuje wywołanie handlera dopiero, gdy będziemy mieli już cały kod HTML. Musimy o niej pamiętać dlatego, że nie można skompresować danych wyjściowych partiami - musi to być przeprowadzone w sposób ciągły. PHP samodzielnie wykrywa, czy przeglądarka użytkownika posiada obsługę tej możliwości, dlatego nie musisz o tym pamiętać.
 
{{Infobox|tekst=Kompresja GZip może być także włączona "firmowo" w pliku ''php.ini'' dyrektywą ''zlib.output_compression''. Nie powinieneś wtedy wywoływać powyższych funkcji. Aby upewnić się, czy ustawienia interpretera na to pozwalają, musisz sprawdzić stan podanej dyrektywy funkcją ''ini_get()''}}
 
=== Ciastka a bezpieczeństwo ===
Ciastka są podstawą wielu systemów autoryzacji użytkowników dzięki możliwości przesyłania za ich pomocą danych między stronami. Jednak wielu początkujących programistów PHP nie rozumie lub nie wie, jak robić to bezpiecznie. Ciastko jest zwyczajnym nagłówkiem HTTP i naprawdę nie stanowi dużego problemu przechwycenie jego treści. Dlatego pamiętaj, aby '''nigdy''' nie przesyłać nim loginów, haseł zalogowanego użytkownika, ani żadnych innych danych potencjalnie pomocnych przy autoryzacji. Jest to całkowicie zła droga, gdyż systemy autoryzacji pisze się z wykorzystaniem sesji. Sesja jest pewnym rekordem z informacjami identyfikacji danego internauty przechowywanymi w bazie albo w pliku tekstowym na serwerze. Posiada długi, alfanumeryczny identyfikator i to on przesyłany jest ciastkiem. Porównując ID z ciastka, a także takie parametry, jak adres IP czy używana przeglądarka, można wyeliminować przypadki kradzieży ID sesji. Mechanizmu sesji nie musisz pisać samemu, gdyż PHP posiada własny. Omówimy go w następnym rozdziale.
 
[[Kategoria:PHP]]