Nowość w tym wszystkim, wybaczcie mojej niewiedzy. Próbuję dowiedzieć się, jak dodać pole "Potwierdź swoje hasło" do mojego formularza. Korzystanie z PHP i mySQL. Czy jest to wpisane w kodzie HTML i jak można go ustawić tak, aby automatycznie sprawdzało, czy pola hasła i pola potwierdzenia pasują do siebie.Potwierdź hasło?
Odpowiedz
Wystarczy dostać zarówno polach Hasło i Potwierdź hasło w postaci przedstawienia PHP i test na równość:
if ($_POST["password"] === $_POST["confirm_password"]) {
// success!
}
else {
// failed :(
}
gdzie password
i confirm_password
są identyfikatory z wejść tekstowych HTML dla haseł.
Czy używasz jakiegoś frameworka? Jeśli nie, powinno to być tak proste, jak sprawdzenie po zapisaniu, że oba pola są ustawione i że $ confirmationPassword == $ passWord. Następnie zastosuj dowolne sprawdzanie poprawności do hasła przed zapisaniem go w SQL.
Próbujesz utworzyć formularz sprawdzania poprawności. Dobrym pomysłem jest sprawdzenie po stronie klienta (przy użyciu javascript), aby uzyskać szybszą odpowiedź dla użytkownika w interfejsie i po stronie serwera (ponieważ użytkownik może mieć wyłączony javascript - i ponieważ powinieneś nigdy nie ufać ślepo w danych wprowadzanych przez użytkownika. Przeczytaj Should you do validation on your server side, aby uzyskać więcej informacji na ten temat).
Wystarczy porównać dwie podane wartości. Jeśli jest poprawna, wstaw do bazy danych. Jeśli nie, nie rób nic i zwróć wiadomość do użytkownika, mówiąc, że hasło jest nieprawidłowe.
Nie mogę podać więcej szczegółów, ponieważ nie podano wystarczających lub szczegółowych informacji o środowisku php (używane frameworki, używane biblioteki itp.).
"i po stronie serwera (ponieważ użytkownik może mieć wyłączony javascript)." - Nie jest to powód do stosowania sprawdzania poprawności po stronie serwera. – strager
Uh, tak, jest. Sprawdzanie po stronie klienta jest przydatne, ale walidacja po stronie serwera zapewnia uwzględnianie problemów po stronie klienta. – ceejayoz
Przypuśćmy, że "Dlaczego nie mogę po prostu napisać walidacji javasctip?", Napisałem po to, aby sprawdzić po stronie serwera, aby pamiętać, że musi to zrobić. Nie mogę podać wszystkich informacji na temat bezpieczeństwa w prostej odpowiedzi. – GmonC
można sprawdzić go w JavaScript używając
<html><title></title><head>
<script>
function validate(){
if(!document.getElementById("password").value==document.getElementById("confirm_password").value)alert("Passwords do no match");
return document.getElementById("password").value==document.getElementById("confirm_password").value;
return false;
}
</script>
</head>
<body>
<form onSubmit="return validate()" action="nextPage.php">
Password: <input type="text" id="password" name="password" /><br/>
Reenter Password: <input type="text" id="confirm_password" name="confirm_password" />
<input type="submit" value="submit"/>
</form>
</body>
</html>
A na stronie sever trzeba sprawdzić je ponownie w przypadku klient nie mieć włączony JavaScript,
if($_GET['password']==$_GET['confirm_password'])
Musisz użyć $ _POST zamiast $ _GET w przypadku metody POST:
Zaktualizowałem kod, brakuje dwukropka na formularzu przesłanym.
<html>
<title></title>
<head>
<script>
function validate(){
var a = document.getElementById("password").value;
var b = document.getElementById("confirm_password").value;
if (a!=b) {
alert("Passwords do no match");
return false;
}
}
</script>
</head>
<body>
<form onSubmit="return validate();" ">
Password: <input type="text" id="password" name="password" /><br/>
Re-enter Password: <input type="text" id="confirm_password" name="confirm_password" />
<input type="submit" value="submit"/>
</form>
</body>
</html>
- 1. "Potwierdź hasło" i "Hasło" nie pasują do siebie. MVC5
- 2. Potwierdź przed wysłaniem formularza
- 3. Potwierdź automatyczne wyświetlenie UITextview
- 4. Podobnie jak przycisk (Potwierdź)
- 5. Potwierdź okno dialogowe w angularjs
- 6. Potwierdź subskrypcję SNS na HTTP
- 7. Potwierdź w mangurze bez zapisywania
- 8. Potwierdź okienko po kliknięciu hiperłącza
- 9. Niestandardowe usuwanie potwierdź w angularJS
- 10. zmiana laravel użytkownika Hasło 5,3
- 11. Zachowanie kanałów w trybie „Potwierdź” z RabbitMQ
- 12. Kliknięcie Potwierdź dialog Selenium w .NET
- 13. Potwierdź komunikat przed opuszczeniem przeglądarki krzyżowej (JS)
- 14. Potwierdź okno dialogowe po zamknięciu przeglądarki?
- 15. Potwierdź przesłanie formularza za pomocą pliku bootbox.confirm()
- 16. JavaScript Powiadom z powrotem z potwierdź
- 17. Potwierdź zmianę daty w usłudze DatePicker
- 18. Silverlight Potwierdź okno dialogowe, aby wstrzymać wątek
- 19. Ansible 2.1.2 Hasło dostępu do playbooka Hasło SSH i hasło do sudo jako wiersze poleceń Argumenty
- 20. Jak zresetować hasło SA?
- 21. ORA-28001: hasło wygasło
- 22. Hasło użytkownika systemu wygasło.
- 23. hasło do tkaniny
- 24. JMX hasło odczytu problem
- 25. tkaniny i svn hasło
- 26. Wyodrębnij hasło zapisane TortoiseSVN
- 27. Hasło resetowania Firebase Swift
- 28. Silne hasło regex
- 29. Jak hash hasło
- 30. Ustaw hasło dla H2
Jak to jest związane z MySQL? Czy chcesz przechowywać oba pola hasła w DB i mieć ograniczenie, aby upewnić się, że pasują? Jeśli tak, to nie byłby najlepszy sposób wymuszenia tego ograniczenia w interfejsie użytkownika ... – dcrosta