
Napisałem prosty skrypt do rejestracji użytkownika. Chcę się dowiedzieć jakie błędy popełniłem i czy takie zabezpieczenia są wystarczające.
Z góry dziękuję

<?php $error = ' '; $fail = 0; echo ' <form method="post" action="register.php"> <input type="text" name="login" /><br><br> <input type="password" name="password"/><br> <input type="password" name="rpassword"/><br><br> <input type="submit" value="Gotowe"/> </form> '; $fail = 1; } else{ $login = $_POST['login']; $pass = $_POST['password']; $rpass = $_POST['rpassword']; if ($pass !== $rpass)$error .= '<br>- podane hasła muszą być takie same'; if (preg_match("/[^A-z0-9_-]/", $login)==1)$error .= '<br>- login może składać się wyłącznie z liter i cyfr'; if (preg_match("/[^A-z0-9_-]/", $pass)==1 || preg_match("/[^A-z0-9_-]/", $rpass)==1 )$error .= '<br>- hasło może składać się wyłącznie z liter i cyfr'; if(mysql_num_rows(mysql_query("select * from users where user_login='".htmlspecialchars($login."'")))) $error .= '- użytkownik o podanym loginie istnieje, wybierz inny login'; if ($error !== ' '){ $fail = 1; } } if ($fail == 0){ } ?>