Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用输入maxlength的限制是否足够?_Javascript_Html_Validation - Fatal编程技术网

Javascript 使用输入maxlength的限制是否足够?

Javascript 使用输入maxlength的限制是否足够?,javascript,html,validation,Javascript,Html,Validation,仅通过设置maxlength来限制用户输入值是否足够?假设我有以下代码: <input type="text" id="foo" maxlength="12"> 用户是否仍然可以(以任何有效或无效的方式)插入超过12的值 当我们设置了maxlength时,是有用的还是无用的再次使用javascript或者在后端(servlet等)进行验证 仅通过设置maxlength来限制用户输入值是否足够 没有 用户是否有可能(以任何有效或无效的方式)插入大于12的值 对 当我们设置

仅通过设置
maxlength
来限制用户输入值是否足够?假设我有以下代码:

    <input type="text" id="foo" maxlength="12">

用户是否仍然可以(以任何有效或无效的方式)插入超过
12的值

当我们设置了
maxlength
时,是有用的还是无用的再次使用javascript或者在后端(servlet等)进行验证

仅通过设置maxlength来限制用户输入值是否足够

没有

用户是否有可能(以任何有效或无效的方式)插入大于12的值

当我们设置了maxlength之后,使用javascript或者在后端(servlet等)再次验证它是有用还是无用

您应该进行验证,最好是在后端进行验证


这是因为向服务器传递数据不一定需要浏览器。还有其他客户端软件,如REST testers、curl、wget、tamper data和类似的软件,它们可以直接向服务器发出请求,所有这些都绕过了
maxlength
属性和JS验证

因此,如果您希望快速验证,以便用户获得快速、交互式的响应,那么您的
maxlength
和JS验证就可以完成这项工作。但是,当数据被传递到服务器时,您应该进行第二次验证,这一次是为了安全。

一切由您决定。 选择数据库中仅允许12个值的数据类型


客户端的工作在验证后完成,但数据库保存的值不会超过12。

“maxlength”只检查前端部分,但需要检查到达服务器的内容。请记住:客户端的任何内容都很容易被击败/欺骗。始终在服务器端执行彻底的验证。永远不要信任用户的任何东西。在客户端,通过使用诸如“firebug”之类的浏览器开发工具,任何人都可以轻松删除“maxlength”属性。所以需要添加服务器端验证。哇,你给了我比我期望的更多
如果超过12个字符的请求击中您的服务器怎么办?
这个问题的答案将是我们需要进行服务器端验证的可能原因之一,正如@Joseph the dreamer所解释的那样。。!!