Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> dostep do czesci strony przez okreslony czas, jaka metoda
a79rtur
post 1.05.2005, 10:59:27
Post #1





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

Ostrzeżenie: (0%)
-----


czesc
mam taka sytuacje ze użytkownik ma mieć dostęp do częsci strony przez określony czas. klika przycisk i zaczyna się odliczanie.
rozwiazałem to za pomocą sesji tzn przy kliknieciu przycisku ustawia sie zmienna o wartosci time()+przez_ile_widoczna. zmienna ta zarówno przechowuje ten czas jak i jest flagą trybu widocznosci. przy przeladowaniu strony sprawdzane jest czy czas jest wiekszy od obecnego, jesli nie jest to zmienna sesyjna jest niszczona.
czy to dobra metoda? myslalem o cookies, ale boje sie ze jakis sprytny uzytkownik moze wyedytowac takie cookie i zamiast dostepu 1h zrobi sobie 10000h smile.gif


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
mario
post 1.05.2005, 11:14:40
Post #2





Grupa: Zarejestrowani
Postów: 186
Pomógł: 0
Dołączył: 23.09.2003
Skąd: Siemianowice Śląskie

Ostrzeżenie: (0%)
-----


Moim zdaniem dobre rozwiązanie. Dodatkowo możesz wrzucić do stronki zegarek w JAVA który będzie odliczał, a w kodzie dać przeładowanie strony po zadanym odliczaniu. Wtedy gościu widzi ile czasu mu zostało, a jak minie - zostanie przekierowany na inną stronę smile.gif

Cookies odradzam gdyż jak sam napisałeś może user sobie ciasteczko zedytować - to nie problem.


--------------------
W życiu piękne są tyko chwile....
Życie choć piękne tak krótkie jest....
Wystarczy chwila by zgasić je....
Go to the top of the page
+Quote Post
a79rtur
post 1.05.2005, 11:16:45
Post #3





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

Ostrzeżenie: (0%)
-----


a czy jesli sa sesje oparte na cookies to w cookie jest zapisane tylko id sesji czy cos jeszcze ? i w jakiej to jest postaci, zakodowane jakos ?


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
hamlecik
post 1.05.2005, 11:36:53
Post #4





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: 31.07.2003

Ostrzeżenie: (0%)
-----


Ja swojego czasu zrobilem to tak jak Ty a79rtur. Po prostu zapisywalem do bazy do kiedy jest czas dostepu dla danego usera. Przy kazdym refresh'u skrypt pobieral z bazy czas dla danego usera i sprawdzal go z aktualnym czasem. Mysle, ze nie warto kombinowac tu z cookies, bo trzymanie czasu dostepu w cookies pociaga za soba pewne konsekwencje, kazdy chyba wie jakie biggrin.gif No mozna szyfrowac zawartosc cookie, ale po co?


--------------------

Yamaha YZF R1
Go to the top of the page
+Quote Post
dr_bonzo
post 1.05.2005, 12:04:14
Post #5





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Cytat
klika przycisk i zaczyna się odliczanie.
rozwiazałem to za pomocą sesji tzn przy kliknieciu przycisku ustawia sie zmienna o wartosci time()+przez_ile_widoczna. zmienna ta zarówno przechowuje ten czas jak i jest flagą trybu widocznosci.


W cookiesach nie przechowuj czasu jaki zostal do konca wyswietlania strony.

Cytat
Moim zdaniem dobre rozwiązanie. Dodatkowo możesz wrzucić do stronki zegarek w JAVA który będzie odliczał, a w kodzie dać przeładowanie strony po zadanym odliczaniu. Wtedy gościu widzi ile czasu mu zostało, a jak minie - zostanie przekierowany na inną stronę smile.gif


Po co -- mozna to wylaczyc, a strone sobie zapisac na dysku.

Cytat
a czy jesli sa sesje oparte na cookies to w cookie jest zapisane tylko id sesji czy cos jeszcze ? i w jakiej to jest postaci, zakodowane jakos ?

W ciasteczku sesyjnym jest zapisane tylko ID sesji, mozesz utworzyc inne ciasteczka dla tej samej strony i wrzucic do nich wszystko.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
ActivePlayer
post 1.05.2005, 12:27:50
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

Ostrzeżenie: (0%)
-----


generujesz unique id. zapisujesz w bazie to id i czas startu.
userowi ustawiasz tylko ciastko z md5(id) i nawet jak by bardzo chcial to nic nie zrobi. a czas obliczasz tak jak mowiles smile.gif
Go to the top of the page
+Quote Post
a79rtur
post 1.05.2005, 14:12:10
Post #7





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

Ostrzeżenie: (0%)
-----


do dr_bonzo:
napisałes:

Cytat
W cookiesach nie przechowuj czasu jaki zostal do konca wyswietlania strony.


ja napisalem ze zapisuje to zapisuje w zmiennej sesyjnej

a pozniej :

Cytat
W ciasteczku sesyjnym jest zapisane tylko ID sesji, mozesz utworzyc inne ciasteczka dla tej samej strony i wrzucic do nich wszystko.


czyli jak to w koncu jest ? jest cos poza id sesji w ciastku sesyjnym czy nie ?


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
dr_bonzo
post 1.05.2005, 15:07:01
Post #8





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Cookie to jest para (nazwa, wartosc). Jedno cookie jedna wartosc. Czyli w cookie sesyjnym jest tylko ID sesji.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
SongoQ
post 1.05.2005, 15:32:57
Post #9





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


Ja nie widze sensu zabezpieczas po stronie przegladarki bo wiekszosc userow sobie poradzi z tym. Jedyne zabezpieczenie jaki bym dal to czas miedzy stronami (czas zycia sesji)


--------------------
Go to the top of the page
+Quote Post
jono
post 1.05.2005, 16:01:11
Post #10





Grupa: Zarejestrowani
Postów: 144
Pomógł: 0
Dołączył: 29.06.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


no, można dodac czas przeładowania w <meta> i wyświetlać go z bazy. Tam się podaje w sekundach, więc to jest łatwe. A na koniec wywali go ze strony smile.gif Ale po prawdzie to bez sensu - wystarczy, że zrobi "zapisz Jako" i już ma nieograniczony dostęp do twoich treści. Więc ograniczony czas logowania to najlepsze rozwiązanie...


--------------------
if(function_exists("zrozum_kobiete")){
echo "Niemożliwe!"; exit;}
Go to the top of the page
+Quote Post
ActivePlayer
post 1.05.2005, 18:22:59
Post #11





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

Ostrzeżenie: (0%)
-----


Cytat
Ale po prawdzie to bez sensu - wystarczy, że zrobi "zapisz Jako" i już ma nieograniczony dostęp do twoich treści. Więc ograniczony czas logowania to najlepsze rozwiązanie...

a jak bedzie
Cytat
ograniczony czas logowania

to nie bedzie mogl zrobic 'zapisz jako' ?
Go to the top of the page
+Quote Post
a79rtur
post 3.05.2005, 08:40:51
Post #12





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

Ostrzeżenie: (0%)
-----


tu nie chodzi o to zeby nie mogl zrobic zapisz jako, niech sobie daje, byle mogl przegladac strony np. z ogloszeniami tylko w ograniczonym czasie.


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 23:39