什么对社交网站有利,无论是服务器端验证还是客户端验证

时间:2012-01-02 07:05:56

标签: php validation codeigniter server-side-validation

我正在使用php进行项目并使用codeigniter。我必须完成表格的验证 我很困惑使用服务器端验证或客户端验证。??

社交网站对服务器端验证或客户端验证有什么好处。??

有谁知道facebook和twitter使用什么策略进行验证?

6 个答案:

答案 0 :(得分:4)

两者,但如果你必须选择一个,服务器端。

客户端验证将使您的表单更易于访问和用户友好。通过刷新页面只是为了让您知道存在错误,您不会浪费用户的时间。

客户端技术(主要是JavaScript)可以被禁用,完全不需要没有验证。

我总是建议两者。

如果你正在使用jQuery,这是我(也是一个受欢迎的)最爱:http://bassistance.de/jquery-plugins/jquery-plugin-validation/

CodeIgniter拥有自己的表单验证库,但如果您正在寻找替代方案,请查看PHP jQuery Validation plugin class。它模仿我刚刚提到的jQuery插件......只在PHP中。

答案 1 :(得分:1)

无论您是否使用客户端验证,都应始终使用服务器端验证。从客户端获得的一切都不应该被信任。

答案 2 :(得分:0)

客户端验证仅对良好的用户体验有用。它不可信任。通过常见的浏览器工具可以轻松修改http请求,以绕过所有客户端验证。

Serverside验证是必须的。

答案 3 :(得分:0)

真的取决于您要验证的内容。如果验证需要数据库中的数据,那么在这种意义上,您将只能使用“服务器端”验证,或者至少使用服务器辅助验证。

然而,这些并不是精确的术语,而且现在,验证通常是使用Ajax完成的,即使使用服务器端数据,LOOKS客户端也是目前的趋势。

答案 4 :(得分:0)

对于社交网站,您必须将验证分为两部分(即客户端和服务器端),因为社交网站存在两个问题,一个是用户友好性和第二是用户信息的安全性

对于没有安全和隐私问题的内容,您可以使用客户端验证 (例如 email-id语法或出生日期语法验证)以及其他内容(例如检查天气是否确实存在电子邮件ID以及其他与密码相关的验证)应该在服务器端。

关键是任何人都可以编辑客户端脚本并将表单提交给服务器,这是不好的做法。

因此,在客户端验证其良好做法后,必须进行(事实上必要的)服务器端验证。

答案 5 :(得分:0)

服务器端验证是必须的,因为这是您可以完全控制的。我的意思是你已经准备好在你身边保护不需要的和非法的数据输入等。 客户端也已经由您编写,但是可以关闭它们,因为默认情况下在IE中启用了javascript。因此,存在传入数据可能根本无法验证的风险。

进行服务器端验证可以随时为此辩护......

因此,服务器端身份验证可以调整,因为它只有在检测到禁用的javascript时才会发挥作用,从而提供双向保护!!!

即使我建议两者都是必不可少的事实上服务器端更重要, (如果你能够在SQL / ACCESS / ORACLE中使用自动触发器,它们将大大减少你对服务器端脚本的需求)快乐的编程! :)