Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Rejestracja niepoprawnie działa
Forum PHP.pl > Forum > Przedszkole
Mateix
Źle działa fragment kodu sprawdzający czy użytkownik wypełnił wszystkie pola.

Jeżeli nic nie wypełni lub wypełni tylko pole z hasłem / powtórzeniem hasła wszystko działa dobrze (wyświetla błąd, że muszą być wypełnione wszystkie pola).
Jeśli napisze nick i tylko hasło (bez powtórzenia) lub napisze nick, hasło i źle napisze powtórzone hasło też działa dobrze (wyświetla błąd, że hasła nie są identyczne).

Rejestracja przechodzi pomyślnie jeśli wszystko dobrze wypełni lub... napisze tylko sam nick, bez niczego więcej.


  1. $nick = $_POST["register_nick"];
  2.  
  3. $pass = md5($_POST["register_pass"]);
  4.  
  5. $repassword = md5($_POST["register_repassword"]);
  6.  
  7. if(!$nick || !$pass || !$repassword){
  8.  
  9. echo "All fields must be completed.";
  10.  
  11. } else {
  12. ... dalsze czynności ...



Proszę o pomoc. Próbowałem zamieniać "||" na "or", !$nick na "empty($nick)", "is_null($nick)", "$nick == null", "$nick = null", "$nick == 0", "$nick = 0" - jednak bez skutku.

P.S. Nie wiem czy jest to ważne ale na hostingu, którego używam mam do wyboru PHP 5.5, 5.4, 5.3 i 5.2. Używam wersji 5.5.
_Borys_
md5() hashuje nawet pusty ciąg a więc $pass oraz $repassword zawsze zwróci true.
Hashuj dopiero po sprawdzeniu pól z hasłem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.