如何保护提交表格

时间:2012-03-09 08:33:11

标签: php forms google-chrome

在谷歌浏览器中有一个名为Inspect元素的东西,你可以通过按f12或rigth点击Inspect元素来访问它。

所以我有一个来自

<form>
<textarea name="title" id="title" maxlength="120"/></textarea>
</form>

所以现在如果使用Inpect元素并编辑页面并将maxlenght更改为500,我可以发送大于120的数据。那么,即使用户使用Inpect元素编辑页面,如何确保数据为120

如果我使用javascript来缩短长度,用户也可以编辑javascript

4 个答案:

答案 0 :(得分:4)

您应该始终检查提交的数据服务器端。信任用户提交的任何内容。

[偏离主题]另外注意不要允许任何类型的注入(客户端脚本,SQL,服务器或其他用户的浏览器可能意外执行的任何内容)

答案 1 :(得分:1)

  

即使用户使用Inpect元素编辑页面

,如何确保数据为120

当然在服务器端验证

if (strlen($_POST['data']) > 120) // some error

没什么大不了的。

请注意您使用的代名词 “你”(假设“我们”)只能用于服务器端,你可以控制它 客户端是“他们” - 这是某人的电脑,你没有丝毫的控制权。

答案 2 :(得分:0)

没有办法在客户端可靠地做到这一点,你传递给客户端的只是暗示客户端由于错误或恶意用户可以自由忽略。

您需要做的是提示客户端,以帮助行为良好的客户端,但始终验证服务器上的传入数据

答案 3 :(得分:0)

谷歌浏览器的'检查元素'功能是一个很棒的工具,但正如你所说它可以操纵页面,这在苹果和微软之前被称为“非法黑客”。没有办法阻止这一点。尝试使用内联验证。