В настоящее время я работаю над регистрационной формой, и я решил добавить некоторые обязательные поля, такие как адрес электронной почты, пароль и т. д.
Единственная проверка, которую я хочу сделать для обязательных полей, просто не является нулевой, поэтому я использовал обязательный атрибут внутри входного элемента.
Это безопасно? Или мне нужно использовать дополнительную проверку PHP?
Спасибо за быстрый ответ. Я только что понял, что можно просто отредактировать исходный код .. :)
@mplungjan, не могли бы вы добавить свой комментарий в качестве ответа, чтобы я мог выбрать его как один?
@ S.terKeurs Все в порядке. На самом деле нет необходимости принимать мой комментарий как ответ. Да, отредактируйте код или не используйте его вообще, просто отправьте POST-запросы с помощью CURL и т. д.






Это может быть безопасно, поскольку последний браузер полностью поддерживает этот атрибут. Но я не знаю, что произойдет, если кто-то будет использовать старую версию браузера, поэтому, если вы боитесь этого, проверка PHP не будет слишком сложной.
Если вам нужен хороший образец регистрационной формы, просто спросите меня наедине, я пришлю его вам!
Или если браузер не используется
никогда будет безопасным, если вы просто полагаетесь на проверку на стороне клиента; вы можете использовать вкладку сети в инструментах разработчика в любом современном браузере для управления данными POST на лету или просто написать новую HTML-страницу с формой, которая отправляется на тот же URL-адрес - и это просто самые простые способы обойти любого клиента - боковая проверка ...
Хм, понятно ... Извините за плохой ответ: ') (Это мой первый здесь, так что в следующий раз будет лучше) А также спасибо, что поправили меня!
Проверка на стороне сервера лучше (если мы даже не можем сказать, что она нужна), и ее действительно легко сделать.
Если нужно, вот пример:
if (!empty($_POST['pseudo']) && !empty($_POST['password'])) {
//Prevent SQL injection (if you use DB here)
$pseudo = addslashes($_POST['pseudo']);
$password = addslashes($_POST['password']);
}
addslashes() - не лучший способ, но работает на любом движке БД, например, лучше использовать mysql_real_escape_string(), если у вас есть движок MySQL.
И связанная форма:
<form method = "post" action = "#">
<label for = "pseudo">Identifiant</label>
<input type = "text" name = "pseudo" required>
<label for = "password">Mot de passe</label>
<input type = "password" name = "password">
<input type = "submit" value = "Connexion" required>
</form>
Использование веб-страницы для отправки вам формы - не единственный способ отправки формы.
Кто-то может отправлять вам формы с других устройств или может обходить ваши обязательные поля и отправлять вам пустые данные или нежелательные данные, такие как PHP-инъекции.
Вы должны выполнить проверку на стороне сервера.
Вам ВСЕГДА нужна проверка на стороне сервера