![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 10.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
siedzialem ostatnio i sie zastanawialem: Dotychczas sprawdzajac np czy taki email istnieje i haslo jest poprawne robilem: // sprawdzamy czy email istnieje w bazie wiadomo gdy =1 to istnieje gdy 0= nie istnieje // sprawdzamy czy uzytkownik podal dobre haslo wiadomo gdy =1 to istnieje gdy 0= nie istnieje i musze w zapytania wykonac. dalo by sie to tak zrobic aby za pomoca jednego zapytania wyswietlalo: ilosc_email | ilosc_password 1 | 0 i wtedy wyciagam np $row['ilosc_email'] -> gdy =1 to istnieje taki mail gdy 0 nie istnieje $row['ilosc_password'] -> gdy =1 to istnieje takie haslo gdy 0 nie istnieje Jesli by sie tak dalo obciazamy nasz system o 1 zapytaniem... Z gory thx za pomoc |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 209 Pomógł: 37 Dołączył: 27.02.2008 Skąd: Kwidzyn Ostrzeżenie: (0%) ![]() ![]() |
po co sprawdzasz osobno, czy uzytkownik o takim mailu istnieje, a potem dopiero, czy haslo jest poprawne?
w jednym zapytaniu bedzie to mniej wiecej tak:
poza tym z kodu wynika, że hasło masz jawnie zapisane w bazie.. jakieś md5 chociaż by się przydało.. Ten post edytował nitek 31.08.2009, 14:43:39 |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Nitek... nie do końca o to mu chodziło. Użycie
Zwróci mu wszystkich użytkowników mających to hasło i jednocześnie ten sam email. A taki w bazie zazwyczaj jest maksymalnie jeden. Wywołanie z kolei dając OR zamiast AND wywali rekordy gdzie jest albo podany emailn albo podane hasło. I w wyniku count zwróci dokładnie te same liczby. Bo po czym rozpozna hasło lub email? Można takie zapytanie napisać ale wyglada ono mniej więcej tak:
Inaczej tego nie da się zrobić i de facto jest to złożenie dwóch podzapytań do kupy, z których każde zwraca namto o co nam chodzi. Ten post edytował thek 31.08.2009, 15:48:24 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 209 Pomógł: 37 Dołączył: 27.02.2008 Skąd: Kwidzyn Ostrzeżenie: (0%) ![]() ![]() |
Nitek... nie do końca o to mu chodziło. Użycie Sorry, tego podwójnego counta to sam nie wiem jakim cudem napisałem (IMG:style_emoticons/default/biggrin.gif) faktycznie 'mały' błąd (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 10.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
po co sprawdzasz osobno, czy uzytkownik o takim mailu istnieje, a potem dopiero, czy haslo jest poprawne? w jednym zapytaniu bedzie to mniej wiecej tak:
poza tym z kodu wynika, że hasło masz jawnie zapisane w bazie.. jakieś md5 chociaż by się przydało.. To byl przyklad w ktorym nie chodzilo o zabezpieczenie - kodowanie jest na sha1. thek - o takie cos mniej wiecej mi chodzilo. thx |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 13:29 |