Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Skrypt logowania, Pytanie o sesje
Savail
post
Post #1





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 25.07.2008

Ostrzeżenie: (10%)
X----


Witam
Chciałem zabrać się do napisania skryptu logowania. Żeby zorientować się co i jak popatrzyłem sobie jak sie pisze proste skrypty logowania i zrodziło się we mnie pytanie (IMG:style_emoticons/default/tongue.gif) .
Gdy pisałem skrypt rejestracji powiedziano mi żeby stworzyć pole active gdzie user po aktywacji emailowej jesli jest zalogowany ma wartosc 1 a jesli nie to ma wartosc 0. Przed aktywacją przechowuje tam losowy string aktywacyjny.
I teraz pytanie... Po co zmieniać w bazie danych w polu active wartosci z 0 na 1 jesli uzytkownik sie loguje, skoro wszystko może sie odbywac w sesjach? Czyli ze dla sesji przypisuje 1 gdy uzytkownik jest zalogowany a 0 jesli nie. Bardzo mnie to nurtuje bo nie wiem już jak mam przeprowadzać logowanie bezpieczną wydajną metodą.
Będę wdzięczny za każdą pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
pedro84
post
Post #2





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


Zaraz, zaraz. Przecież aktywację email przeprowadza się raz i tę wartość także zmienia się raz.
Go to the top of the page
+Quote Post
Adis92
post
Post #3





Grupa: Zarejestrowani
Postów: 146
Pomógł: 12
Dołączył: 9.01.2009
Skąd: Płock

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


No dokładnie Aktywacja email przeprowadza się tylko raz jeżeli użytkownik ma wartość 0 to nie będzie mógł korzystać w pełni z konta a jeżeli ma wartość 1 to już może normalnie korzystać. Więc tutaj nie ma co się bawić sesjami bo to jest wyłącznie jeden warunek sprawdzający czy czy konto zostało aktywowane czy też nie. A na sesjach przeprowadzasz resztę logowania.
Go to the top of the page
+Quote Post
muk4
post
Post #4





Grupa: Zarejestrowani
Postów: 309
Pomógł: 56
Dołączył: 3.11.2006
Skąd: Gliwice

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


Cytat(Savail @ 2.07.2010, 22:53:03 ) *
Po co zmieniać w bazie danych w polu active wartosci z 0 na 1 jesli uzytkownik sie loguje, skoro wszystko może sie odbywac w sesjach?

Może, żeby potem dodać licznik, który pokazuje ile osób jest zalogowanych. Ale wtedy byś musiał napisać auto zmianę na '0' po np. X minutach bezczynności.
Bo ktoś się nie wyloguje tylko zamknie przeglądarkę i będzie pokazywać, że jest zalogowany.
Go to the top of the page
+Quote Post
Savail
post
Post #5





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 25.07.2008

Ostrzeżenie: (10%)
X----


aha czyli cos mi sie poprzestawialo? Czyli wartosc z pola active wykorzystuje w skrypcie tylko do tego zeby sprawdzic czy uzytkownik ma aktywne konto tak?
Go to the top of the page
+Quote Post
pedro84
post
Post #6





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


No tak.
Go to the top of the page
+Quote Post
Grze_chu
post
Post #7





Grupa: Zarejestrowani
Postów: 23
Pomógł: 4
Dołączył: 30.01.2010

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


A po aktywacji możesz z każdym odświeżeniem strony, ładować do bazy timestamp ostatniego wyświetlenia, i możesz sobie napisać przez to ładne statystyki real-time.
A i prosty (jedno zapytanie do bazy) wskaźnik online, będzie dokładniejszy, i nie będzie wymagał po np. minucie wrzucania 0 do `active`.

Pozdro!
Go to the top of the page
+Quote Post
Savail
post
Post #8





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 25.07.2008

Ostrzeżenie: (10%)
X----


a jeszcze przy okazji zapytam... Jaka jest idea szyfrowania hasla metoda sha1(); ? Po co to robić? I czy zaszyfrowane haslo ma zawsze 40 znaków?
Go to the top of the page
+Quote Post
gigzorr
post
Post #9





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(Savail @ 3.07.2010, 11:10:13 ) *
a jeszcze przy okazji zapytam... Jaka jest idea szyfrowania hasla metoda sha1(); ? Po co to robić? I czy zaszyfrowane haslo ma zawsze 40 znaków?



Mozesz md5 , zawsze ma 40.A poco to robic?Sam sobie odpowiedz;p

Adis raczej haseł.

Ten post edytował gigzorr 3.07.2010, 10:36:02
Go to the top of the page
+Quote Post
Adis92
post
Post #10





Grupa: Zarejestrowani
Postów: 146
Pomógł: 12
Dołączył: 9.01.2009
Skąd: Płock

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


Idea szyfrowania jest taka żeby osoba która włamie się na stronę nie mogła sprawdzić loginów użytkowników do strony.
Go to the top of the page
+Quote Post
Savail
post
Post #11





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 25.07.2008

Ostrzeżenie: (10%)
X----


A login tez szyfrować? Czy tylko haslo? Bo jak login bede szyfrowal to bedzie troche problem z wyswietlaniem nazwy uzytkownika
Go to the top of the page
+Quote Post
gigzorr
post
Post #12





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


haslo tylko ><
Go to the top of the page
+Quote Post
Savail
post
Post #13





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 25.07.2008

Ostrzeżenie: (10%)
X----


Dzięki wszystkim za pomoc ^^

Ten post edytował Savail 3.07.2010, 12:45:02
Go to the top of the page
+Quote Post
pedro84
post
Post #14





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


Cytat(Savail @ 3.07.2010, 11:50:34 ) *
A login tez szyfrować? Czy tylko haslo? Bo jak login bede szyfrowal to bedzie troche problem z wyswietlaniem nazwy uzytkownika

(IMG:style_emoticons/default/biggrin.gif) A jak chciałbyś wyświetlić hashowany login?

Warto do hasła dodać soli, użyj wyszukiwarki forum, to zobaczysz co to, po co i czy warto (a warto).
Go to the top of the page
+Quote Post
sebekzosw
post
Post #15





Grupa: Zarejestrowani
Postów: 437
Pomógł: 42
Dołączył: 16.04.2007

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


Cytat(Savail @ 3.07.2010, 08:52:18 ) *
aha czyli cos mi sie poprzestawialo? Czyli wartosc z pola active wykorzystuje w skrypcie tylko do tego zeby sprawdzic czy uzytkownik ma aktywne konto tak?



Można to też wykorzystać w inny sposób - jeżeli na 1 konto może się zalogować 1 osoba w danym czasie. Jeżeli jest 0 to user nie jest zalogowany, a jeżeli 1 to user jest zalogowany i przy logowaniu wywala błąd. Można kombinować z tym - i oczywiście w innym polu takie dane przechowywać np.: isOnline
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 23:15