$ _POST数组是否仅包含用户提交的内容

时间:2013-05-26 13:34:09

标签: php forms post

我可以依赖每个浏览器只会从发布的表单发送POST数据,还是有些浏览器会发送其他数据?

我问的原因是,我有一个包含很多字段的表单,可能只是数字。所以最简单的验证就是通过一个检查每个字段是否为数字的函数运行它。

我机器上的浏览器只发送表单中的字段,所以我希望每个浏览器都能使用这些字段。

1 个答案:

答案 0 :(得分:1)

  

我可以依赖每个浏览器只会从发布的表单发送POST数据,还是有些浏览器会发送其他数据?

没有。一点也不。浏览器通常不发送其他POST数据(如果用户不具体),但这不是信任POST数据的理由。

  

我问的原因是,我有一个包含很多字段的表单,可能只是数字。所以最简单的验证就是通过一个检查每个字段是否为数字的函数运行它。

我不会这样做。您可以创建一个预定义$_POST索引的数组来检查并运行foreach。不要直接在POST值上使用foreach

  

我机器上的浏览器只发送表单中的字段,所以我希望每个浏览器都能使用这些浏览器。

通常情况如此,但POST请求不仅可以通过提交表单来进行。因此,应始终验证任何POST数据,并忽略未请求的数据。