防止用户滥用javascript代码 - php

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center作为指导。

7年前关闭。

我网站上的用户可以单击一个按钮。如果他们这样做,他们将获得积分奖励。

单击此按钮后,它将对服务器进行AJAX调用以提供奖励(存储在数据库中)。

该按钮是一个“发送推文”按钮,因此我想确保他们确实在做推文。

我的问题是我要确保确实单击了该按钮。由于javascript代码对用户完全可见,因此我认为对于他们而言,只需单击而不进行AJAX调用将很容易。

那么,我能做些什么?混淆是我唯一的选择,还是我可以加密某些东西,或使用令牌或其他东西?

如果有帮助,则用户登录并使用PHP服务页面。

谢谢

参考方案

基本上,您很不走运-没有万无一失的解决方案,它将阻止某人编写一个简单的脚本来下载页面,为所有安全令牌解析该脚本,然后调用AJAX请求。

您只能通过添加一些由服务器渲染并通过AJAX调用提交的其他数据来使工作稍微困难一些。

您可能希望将CAPTCHA图像添加到按钮上-这样可以防止僵尸程序提交数据,但也会增加真实用户的生活。

AJAX实时电子邮件验证(PHP) - php

当用户在我的网站上创建帐户时,我希望对照我的数据库(MySQL)中的所有当前用户名检查输入的用户名,并确认是否可用。有谁知道我可以使用的任何好的库,或者是jQuery的插件? 参考方案 所需的确切信息以示例形式here给出。它使用jQuery作为JavaScript库

PHP getallheaders替代 - php

我正在尝试从服务器上的apache切换到nginx。唯一的问题是我在PHP脚本中使用的getallheaders()函数,该函数不适用于Nginx。我已经尝试过用户在getallheaders函数上的php站点上提供的注释,但这并不返回所有请求标头。请告诉我如何解决这个问题。我真的想切换到Nginx。 参考方案 您仍然可以使用它,但是您必须像这里一样重新定义…

php Singleton类实例将在多个会话中保留吗? - php

举一个简单的例子,如果我想计算一个不使用磁盘存储的脚本的命中次数,我可以使用静态类成员来执行此操作吗?用户1:<?php $test = Example::singleton(); $test->visits++; ?> 用户2:<?php $test = Example::singleton(); $test->visits+…

PHP-服务器端验证-这是一个好方法吗? - php

我已经通过jQuery的帮助进行了广泛的客户端验证。现在进入服务器端验证,如果我发现某些字段无效,是否可以简单地将错误返回给客户端并且没有任何有用的消息?我的假设是用户必须启用JavaScript才能访问我的网页。如果Web浏览器禁用了JavaScript,则用户将看不到该表单。我可以简单地使用noscript来做到这一点。如果他们通过我设计的表单提交信息,…

在访问另一页面后保留浏览器滚动位置 - php

我正在使用JS,JQuery和PHP,试图解决无限滚动问题。问题是,如果您在页面上滚动很长一段时间,并且用ajax加载了更多页面,然后单击链接转到新页面,那么在使用浏览器时如何自动转到旧页面中的同一位置新页面上的返回按钮?。新页面使用ajax滚动加载。 php参考方案 我想出的解决方案是在离开页面之前,将每个页面与相关数据一起存储。需要以下信息来保持滚动位置…