Cześć, siedziałem ostatnio nad systemem logowania i rejestracji. Teraz próbuję zrobić zmianę loginu w ustawieniach konta w aplikacji, niestety, kiedy podane nowe hasło nie spełnia wymogów, przy każdym odświeżeniu strony pojawia się powiadomienie, a nie tak jak zakładałem - bezpośrednio po wysłaniu formularza.
KOD:
if ( (isset($_POST['Old_login'])) && isset( $_POST['New_login']) ) {
//sprawdzanie czy nowe hasło i stare zostało wprowadzone.
$New_login = $_POST['New_login'];
$New_login = htmlentities($New_login);
//definiowanie i wstępna walidacja nowego loginu
if ($_POST['Old_login'] === $login) {
//sprawdzanie czy aktualny login jest prawidłowy
if (ctype_alnum($New_login)) {
//sprawdzanie czy login jest alfanumeryczny
if ( (strlen($New_login) > 2) && (strlen($New_login)<26) ) {
//sprawdzanie czy login ma odpowiednią długość
$polaczenie->query("UPDATE `logowanie` SET `Login`= '$New_login' WHERE Login = '$login'");
header('Location: logout.php');
//nadpisywanie loginu
}
else{
//jeśli login jest za krótki wyświetla alerta
echo "<script>alert('Login musi mieć od 3 do 25 znaków!')</script>";
unset($_POST['New_login']);
}
}
else{
//jeśli login nie jest alfanumeryczny, wyświetla alerta
echo "<script>alert('Login musi być alfanumeryczny!')</script>";
}
}
}
?>