如何防止用户从浏览器调试工具更改表单输入值?

时间:2017-11-17 06:27:49

标签: javascript php html forms

我想创建一个HTML表单,用户可以输入他的名字并提交,但是用户没有填写名称输入,系统将不会提交并在警告框中显示错误信息。

这是关于form.php的代码

<form name="myForm" action="b.php" method="post">
Name: <input type="text" name="fname">
<input type="submit" value="Submit" onclick="return validateForm()">
</form>

<script>
function validateForm() {
    var x = document.forms["myForm"]["fname"].value;
    if (x == "") {
        alert("Name must be filled out");
        return false;
    }
}
</script>

并提交成功,该信息将转到此页面b.php b.php

    <?php
echo $_POST[fname];
?>
但是当用户使用浏览器调试工具(如chrome)时,他们可以更改表单输入“name”“id”“class”.etc值,在这种情况下,当用户更改表单名称值时,表单可以提交时不填写姓名。

任何想法解决这个问题.....或者使用javascript进行验证不是一个好选择?????感谢enter image description here

在此输入图片说明

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:2)

服务器端验证将处理此问题。如果输入值为空或任何内容,则将页面返回到表单。