php - 表单验证 - jQuery 验证是否足够以及如何巧妙地验证 PHP 中的数据?

标签 php javascript jquery forms validation

我有一个表单(现在只有一个,但会有更多具有相似参数的表单)并且我使用 jQuery Validation 对其进行验证( 这个词太大了,我只使用 jQV 验证一个字段),此表单使用 AJAX 发送。我在这个表格中有 5 个输入:

  • 文本输入:用户名,由单独的 PHP 脚本远程验证 - 它检查该用户是否存在于不同站点的数据库中,如果存在,还会检查该用户是否有一些指定的数据,但这并不重要

  • 2 倍单选按钮(我的意思是 2x 2 单选按钮)在 PHP 中验证(稍后编写代码)

  • 2 次 PickAColor 形式,也仅使用 PHP 和正则表达式对 hexcolors 进行验证

我有一个问题。有没有什么方法可以用更更复杂的方式在 PHP 中检查这些数据?因为,正如我所说,我以类似的方式验证它们:

if($period != "3month" && $period != "7day") {
  echo '<div class="alert">Wrong period!</div>';
  exit;
}

实际上我现在正在写的这个表格很短,但我也有一些非常大的表格,如果像上面这样的表格甚至可以占用 50 行,这很糟糕。它们中的大多数在 if 中都有类似的表达式,这意味着我检查表单发送的值是否在表单提供的可能选项列表中(有人可以更改 value 中的参数 Firebug 并称自己为黑客......)。这很复杂,我不知道怎么说,但我想你明白我的意思。所以,再一次 - 在 PHP 中验证它是否有意义?如果是,是否有更好的方法来验证它?或者您有其他建议吗?非常感谢您的帮助。

最佳答案

伙计,你必须认为你的用户可以在那里提交任何东西,为了使代码更清晰和更面向 MVC(和可重用),你需要在应用程序端进行验证,并在 jQuery 中使用通用函数来向用户显示错误,所以我建议您使用发送到您的 php 应用程序的表单进行 ajax 发布,发送到接收表单值的 api Controller ,使用模型进行验证并返回具有 jew 表单值的对象(如果您需要清理)以及每个字段的任何错误,然后您只需在 json 中输出:

{
    errors: {
        name: "Already used name",
        field2: "Some bad text provided"
    }
}

然后你只需遍历错误并设置为每个错误文本的已经存在的占位符,如

<spam id="name-error" class="error"></spam>
<input type="text" name="name" value=""/>

然后您就有了一个验证码,您可以在提交表单时重复使用它。

关于php - 表单验证 - jQuery 验证是否足够以及如何巧妙地验证 PHP 中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16845069/

相关文章:

php - 函数开始时出现解析错误 : syntax error, 意外的 T_VARIABLE

javascript - 如何在 facebook api 中获取用户位置和用户家乡?

javascript - RequestAnimationFrame polyfill中1000/60的意义是什么

javascript - Google GeoCharts 数据未加载

php - Laravel 选择性缓存

php 在浏览器中默认设置编码 iso-8859-1

php - mysql查询调整在百分比或固定类型佣金值保存在一列的情况下获取最高数量

javascript - 我如何在 javascript 中创建类后运行函数

javascript - HTML5 与 Javascript 有什么区别

javascript - 返回上一页而不使用 jquery 刷新,而不是 angularjs