Php $u POST数组是否只包含';由用户提交

Php $u POST数组是否只包含';由用户提交,php,forms,post,Php,Forms,Post,我可以相信,每个浏览器都只会从他们发布的表单中发送发布数据,还是有一些浏览器会发送附加数据 我问这个问题的原因是,我有一个表单,有很多字段,可能只是数字。因此,最简单的验证就是通过一个函数运行它,该函数检查每个字段是否都是数字 我机器上的浏览器只发送表单中的字段,所以我希望其他浏览器都是这样 我可以相信,每个浏览器都只会从他们发布的表单中发送发布数据,还是有一些浏览器会发送附加数据 不,一点也不。如果用户不明确,浏览器通常不会发送其他帖子数据,但这不是信任帖子数据的理由 我问这个问题的原因是,我

我可以相信,每个浏览器都只会从他们发布的表单中发送发布数据,还是有一些浏览器会发送附加数据

我问这个问题的原因是,我有一个表单,有很多字段,可能只是数字。因此,最简单的验证就是通过一个函数运行它,该函数检查每个字段是否都是数字

我机器上的浏览器只发送表单中的字段,所以我希望其他浏览器都是这样

我可以相信,每个浏览器都只会从他们发布的表单中发送发布数据,还是有一些浏览器会发送附加数据

不,一点也不。如果用户不明确,浏览器通常不会发送其他帖子数据,但这不是信任帖子数据的理由

我问这个问题的原因是,我有一个表单,有很多字段,可能只是数字。因此,最简单的验证就是通过一个函数运行它,该函数检查每个字段是否都是数字

我不会那么做的。您可以创建一个预定义的
$\u POST
索引数组来进行检查,并在该索引上运行foreach。不要直接对POST值使用
foreach

我机器上的浏览器只发送表单中的字段,所以我希望其他浏览器都是这样


通常情况下是这样的,但POST请求不仅可以通过提交表格来实现。因此,任何POST数据都应始终经过验证,而未请求的数据应被忽略。

您假设POST请求只能从浏览器中发出,并且用户不能篡改其浏览器中的表单字段。总有一个smartass或blackhat dude会试图搞乱您。永远不要偷懒处理用户的数据。如果他们偷懒,验证将失败,什么也不会发生?“不要在POST值上使用foreach”为什么?@phpNoOb,因为我(用户)可以随意处理该数组。为什么会这样?但我的例子中的验证仍然会失败?@JensAhlstenHerlevsen,你没有提供任何例子。你在说什么?“最简单的验证就是通过一个函数运行它,该函数检查每个字段是否都是数字”。这可以通过$\u POST数组上的foreach轻松完成。如果数组中的任何值不是数字,则验证将失败,不会发生任何错误。但我会接受你的回答,因为它说我不能依靠浏览器不通过POST发送额外的数据。