最喜欢的Web表单验证技术

时间:2008-10-06 21:24:54

标签: javascript flex validation sanitization

每个人最喜欢的用户数据清理方法是什么?

我一直在使用Javascript,但最近需要更安全的东西(毕竟人们可以关掉它),所以我在看Flex,但我想我会问社区他们的想法。

5 个答案:

答案 0 :(得分:4)

永远不要使用javascript 或任何其他客户端技术进行 only 验证。您可以使用客户端验证来节省服务器上的一些负载,或者通过在验证失败时更快地显示错误来使您的应用程序看起来更具响应性,但您应始终使用服务器端代码验证。

就个人而言,我喜欢ASP.Net验证控件,因为它为您提供了服务器端安全性的客户端验证,而无需编写逻辑两次。当然,库存控制非常简单,但你可以扩展它们。

答案 1 :(得分:3)

验证应始终在服务器端完成。另外,做客户端也很好。

如何操作取决于您的应用程序的编写内容。任何语言都应该能够处理验证;使用的逻辑是重要的,而不是语言。

这还取决于您对所提供数据的处理方式。将其放入URL或将其存储在SQL数据库中需要两种非常不同的清理方法。如果可能的话,白名单有效值 - 不要将无效值列入黑名单。总有人能够提出你没有考虑过的新的错误输入。

答案 2 :(得分:1)

根据项目的要求,您可能希望也可能不希望实施客户端验证。但是,应始终实施服务器端验证。我更喜欢将适当的输入和值列入白名单,而不是列出无效数据的黑名单,因为这样可以确保没有人会因为我没有考虑过而放弃某些东西。

答案 3 :(得分:1)

  • 至少使用服务器端验证
  • 使用正则表达式

PHP示例:

preg_match('/^[\w][\w\,\-\.]*\@[\w]+[\w\-\.]*$/', $_GET['email'], $matches);
if (count($matches) > 0) {
  $_GET['email'] = $matches[0];
} else {
  die('invalid email address');
}

答案 4 :(得分:0)

建议使用服务器端和客户端验证。 我使用JQuery进行客户端验证。