![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 2.03.2010 Skąd: ta pewność? Ostrzeżenie: (0%) ![]() ![]() |
Witam, chciałbym prosić o optymalizacje (a konkretnie rady co należałoby zmienić) kodu doświadczonych programistów
rejestracja.php
I największe moje pytanie, które już dawno chciałem zadać "Jak przypisać id użytkowników do sesji, obecnie loguję po nazwie użytkownika" tak:
To wszystko co potrafię w php mnie to wystarczy ale czy jest dobrze zoptymalizowane czy też można by coś dodać bądź zmienić to byłoby miło. Najbardziej jednak nurtuje mnie pytanie, które napisałem wyżej (IMG:style_emoticons/default/smile.gif) @kolejne z pytań: przy rejestracji jest tak, że dla kodu użytkownik Bellum i użytkownik bElLuM to inne osoby wystarczy inne hasło i email by się zarejestrować, ponad to przy logowaniu zamiast bElLuM mogę wpisać Bellum i hasło ale nie do Bellum tylko do bElLuM i się normalnie zaloguję, proszę o radę myślę, że chodzi tutaj o uwzględnianie wielkości liter. Ten post edytował Bellum 23.04.2011, 14:35:42 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 5 Dołączył: 24.08.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Tak więc:
Kod 1 1. Linie 57-61 Jak dla mnie nie potrzebne używanie dodatkowego wyrażenie regularnego. Jeśli sprawdzasz już hasło to potem to powtórzenie wystarczy sprawdzić czy jest takie samo jak to hasło. Jak hasło jest złe to co za różnica czy jego powtórzenie jest poprawne. A jak hasło jest poprawne to jeśli powtózenie jest takie samo to znaczy, że musi przejść to wyrażenie regularne. 2. Używanie eregi Niby działa, ale zgodnie z Manualem nie powinno się go już stosować: http://pl.php.net/eregi 3. #Sprawdzanie czy taki użytkownik już istnieje Nie za bardzo rozumiem czemu pobierasz listę wszystkich użytkowników, aby sprawdzić czy już taki istnieje. Przy małej ilości userów to nie ma zbytnio różnicy, ale przy dużej już jest to poważny błąd. Lepiej zastosować pytanie typu:
4. #Sprawdzanie czy taki email już istnieje To samo co powyżej ^^ 5. Linia 98 Zamiast wywoływać funkcje time() wcześniej możesz to zrobić w zapytaniu poprzez np. NOW() zamiast '$date' 6. Hasło Wprowadził bym jakieś minimalną długość hasła, bo teraz możesz mieć 1 znakowe ;> Kod 2 1. Tutaj bym nie sprawdzał czy hasło składa się tylko z liter i cyfr. Dlaczego? Bo i tak liczysz z tego sumę md5, więc nie ma za bardzo znaczenia czy to pole zawiera niebezpieczne znaki czy nie. Co do pytania: jeśli masz w bazie danych pole id to wystarczy, że je pobierzesz (a pobierasz bo korzystasz z *) i jak użyjesz funkcji np. http://pl.php.net/mysql_fetch_row to będziesz mógł pobrać to pole i przypisać do zmiennej. Ostatnie pytanie: Linię 33 w pierwszym kodzie zamień na: Pozdr, Valker |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 06:34 |