![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 15.03.2013 Ostrzeżenie: (0%) ![]() ![]() |
Mam jeszcze jedno pytanko, do mądrzejszych ode mnie (IMG:style_emoticons/default/smile.gif)
Otóż mam sobie portal, użytkownik loguje się. Przechodząc ze strony do strony cały czas potrzebne są pewne stałe informacje (nazwy innych użytkowników z jego obszaru, id itp.). Każdy użytkownik ma zbiór innych stałych użytkowników, którzy mu się wyświetlają. Tak więc za każdym razem, gdy użytkownik przechodzi z strony na stronę, wysyłam identyczne zapytania do MySQL. Czy da się te informacje przechowywać w jakiejś pamięci podręcznej? Widzę następujące możliwości. Proszę o komentarz, co powinienem wybrać: 1) zapisywać informacje w pliku tekstowym na serwerze, np. "tmp_{$user_id}.php", odświeżanym co rozpoczęcie nowej sesji. 2) przesyłać te informacje za pomocą $_COOKIES 3) przesyłać te informacje za pomocą $_SESSION 4) czy są jeszcze jakieś inne sposoby? Jak Wy rozwiązujecie takie problemy najczęściej? Wydaje mi się najlepsza opcja 1). Pytanie drugie: jak działa $_SESSION? Jeżeli zapiszę tam zmienną, ona w zaszyfrowanej postaci przesyłana jest na komputer użytkownika, czy cały czas znajduje się na serwerze? Jeżeli zapiszę sobie np. 100 kb danych w $_SESSION to za każdym razem te informacje przesyłane są pomiędzy użytkownikiem a serwerem? Pytanie trzecie: czy jeżeli wybiorę opcje 2), to czy ktoś fizycznie jest w stanie zmienić pliki cookies na swoim komputerze tak, aby je spreparować i wyświetlać błędne/shackowane informacje? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 222 Pomógł: 34 Dołączył: 3.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
pyt 1) Ja bym to chowal w sesji ($_SESSION) najlatwiej i najszybciej
pyt 2) pliki sessji zapisywane sa na serwerze. miedzy uzytkownikiem a serwerem jest przesylany zawsze tylko i wylacznie identyfikator tej sesji, wiec niezaleznie czy bedziesz mial w sesji 100kB czy 100MB transfer miedzy maszynami sie nie zmieni. pyt 3) tak - ciastko mozna zmienic i to w bardzo prosty sposob. poza tym to wlasnie w tym przypadku potrzebny jest transfer miedzy klientem a serverem. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 22:43 |