可能的重复:
防止欺诈性提交到记分牌
防止在 Javascript 游戏中作弊
我找到了一种通过使用以下方法将我的 javascript 变量传递给 php 变量的方法:
window.location.href = ".../gameover.php?points=" + points+"&speed="+window.speed;
在gameover.php
我使用的网站 中
$_GET[speed] // and
$_GET[points]
访问我的变量。然后这些值作为 hiscores 存储到数据库中。但我的问题来了:如果用户只是输入例如
.../gameover.php?points=500000&speed=85
在地址栏中,它还存储这些变量。
我发现了一些有助于避免这种情况的方法,但你仍然可以绕过它。在我的主页上,我创建了一个 cookie 'notcheatated',如果用户访问该页面并且 notcheated isset 那么它会破坏 cookie 并将值存储在我的 hiscores 但如果用户访问主页然后输入上述地址例如然后cookie isset 但他还没有玩过游戏,然后这些值也会被存储。
有人有什么建议来保护我的网站,这样人们就不能只输入他们自己的 hiscores。
编辑:我曾尝试使用 javascript 帖子来做到这一点,但没有奏效。也许我做错了什么,有人可以给我举个例子来说明我应该怎么做吗?