php - 使用代码检查器编辑 DOM 客户端来操纵服务器端行为

标签 php javascript jquery

我有一个表单,其中每个字段都通过其类属性赋予某些属性。

即都是必需的输入,并且期望其值被格式化为电子邮件地址。

使用 Javascript/jQuery,我迭代了表单中的所有输入,确定了每个输入的关联属性(如果有),并通过 ajax 提交它们,以便使用 PHP 在服务器端进行后处理。

因此 PHP 将在上面的输入示例中确定 $_POST["email"] 1) 是否有值以及 2) 该值是否是电子邮件地址。

我在实现任何预期行为方面没有遇到任何问题。我的问题/担忧是如何防止用户在提交表单之前使用代码检查器工具(例如 FireBug)操作每个字段的属性,即删除“电子邮件”id 的“必需”类,以便他们可以成功提交表单而无需提供电子邮件输入。有什么办法可以防止狡猾的用户利用这一点吗?或者这只是我设计表单验证的结果?

任何见解将不胜感激。

最佳答案

如果表单未正确填写,Javascript 可用于向用户提供即时反馈,因此他们不必经历“填写表单、提交、返回错误页面”的往返过程。

但它绝不应该是唯一的验证方法。无论如何,测试表单以确保通过 Javascript 输入了有效的电子邮件,但您还必须在服务器上执行此操作。根据定义,浏览器中的所有内容都在用户的控制之下,这意味着所有内容都可以被轻易绕过/伪造/操纵/颠覆。

关于php - 使用代码检查器编辑 DOM 客户端来操纵服务器端行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5871799/

相关文章:

javascript - jQuery onLoad 事件在加载任何内容之前触发

javascript - 将 HighCharts 渲染为类而不是 id?

php - 混合 php 和 html 文件

javascript - c3.js 生成图表后更改颜色模式

php - 数据库中标签系统的实现

Javascript 和 Howler.js - 如何选择随机声音?

javascript - 无法在 React.js 中为按钮切换类

jquery - ajax请求发送时如何执行一些操作?

PHP 查询 MySQL 返回单个值

php - 每次 PHPUnit 测试后换行