【发布时间】:2013-05-26 13:17:40
【问题描述】:
我有一个表单(现在只有一个,但会有更多具有类似参数的表单),我使用 jQuery Validation 对其进行验证(it 这个词太大了,我只使用 jQV 验证一个字段),此表单是使用 AJAX 发送的。我有这种形式的 5 个输入:
文本输入:用户名,由单独的 PHP 脚本远程验证 - 它检查此用户是否存在于不同站点的数据库中,如果存在,还检查此用户是否有一些指定数据,但这并不重要
2 次单选按钮(我的意思是 2x 2 单选按钮)在 PHP 中验证(稍后代码)
2 次 PickAColor 表单,也仅使用 PHP 和 regexp 对 hexcolors 进行验证
我有一个问题。有什么方法可以在 PHP 中以更sophisticated 的方式检查这些数据?因为,正如我所说,我以类似的方式验证它们:
if($period != "3month" && $period != "7day") {
echo '<div class="alert">Wrong period!</div>';
exit;
}
其实我现在写的这个表格比较短,但我也有一些非常大的,像上面这样的if 甚至可以有50行,这很糟糕。它们中的大多数在 if 中都有类似的表达式,这意味着我检查表单发送的值是否在表单提供的可能选项列表中(有人可以更改 value 中的参数Firebug 并称自己为黑客......)。这很复杂,我不知道该怎么说,但我想你明白我的意思。所以,再一次 - 在 PHP 中验证它有什么意义,如果是这样,有没有更好的方法来验证它?或者,也许您还有其他建议?非常感谢您的帮助。
【问题讨论】:
-
这取决于你的听众。如果你能保证你的听众永远不会试图绕过你的验证,那么 jQuery 就足够了。如果您不能确定,那么您绝对需要使用 PHP 验证服务器端,并且不要信任来自客户端的任何内容。
标签: php javascript jquery forms validation