所有。我想分享一些在我的代码中发生的问题。我有一个HTML表单,使用php发布并保存到mysql数据库。如果数据总数不是100,我会给出一个验证表格,它不能发布。我使用javascript在客户端或HTML中执行此限制。 像这样的东西:
$("#submit").click(function(event) {
var total_I = $("#total_I").val();
var total_III = $("#total_III").val();
var total = 0;
/* stop form from submitting normally */
if($("#eval-form").validate().form())
{
当我们做一些测试计划时它完美地工作。但是当这个网站一次启动并访问大约500个用户时,有一些数据在数据库中保存的数据少于100。 我的问题是,如何克服这个问题?有没有什么方法可以更好地限制这种情况? 首先,感谢您的回答
答案 0 :(得分:4)
如果我要写一本关于网络安全的书,标题将是“永远不要信任客户”。
您并没有真正控制客户端,因此如果关闭javascript或某人将自定义查询放在一起,或者客户端表现不正常,则可能会收到错误的数据。
从用户界面的角度来看,客户端验证是一个很好的工具。它可以提前发现错误,如果正确实施,可以减少用户的挫败感。
作为安全或策略执行措施,客户端验证毫无用处。您必须检查您在服务器端实际收到的数据,即使这意味着要复制客户端上完成的工作。
答案 1 :(得分:2)
当您使用Jquery进行验证时,客户端最好也在服务器端替换它。
因此,在PHP的脚本中(我假设它构成了您的标记),您可以插入第二次数据验证。
这将确保数据符合您的验证。