Можно создать дубликат:
Preventing fraudulent submission to a scoreboard
Prevent Cheating on Javascript Gameпроблем безопасности с передачи переменного яваскрипта переменной PHP
Я нашел способ передать мое JavaScript переменных в переменный PHP с помощью используя это:
window.location.href = ".../gameover.php?points=" + points+"&speed="+window.speed;
в gameover.php
месте я использую
$_GET[speed] // and
$_GET[points]
, чтобы получить доступ к своим переменным. эти значения затем сохраняются в базе данных в качестве ячеек. но тут приходит моя проблема: если пользователь просто типы, например
.../gameover.php?points=500000&speed=85
в адресной строке также сохраняет эти переменные.
Я нашел кое-что, что помогает избежать этого, но вы все равно можете обойти его. на моей главной странице я делаю cookie 'notcheated', и если пользователь посещает страницу и notcheated isset, тогда он уничтожает файл cookie и сохраняет значения в моих ястребах, но если пользователь посещает главную страницу и затем входит в вышеуказанный адрес, то cookie isset, но он не играл в игру, а затем значения также сохраняются.
У кого-то есть предложения по защите моего сайта, чтобы люди не могли просто ввести свои собственные символы.
Редактировать: Я попытался сделать это с помощью javascript, но это не сработало. возможно, я сделал что-то не так, может кто-нибудь, пожалуйста, покажет мне пример того, как я должен это делать?
В этой ситуации я не вижу, что быть жизнеспособным вариантом. Счет и время будут вычисляться с клиентской стороны, а затем отправляться на сервер, что означает, что серверная сторона не могла заранее знать эти значения. – Gavin
@Gavin Нет никакого конкретного решения, кроме как обрабатывать его на стороне сервера - его всегда можно подделать на стороне клиента. См. Ссылки, предоставленные другими. – Polynomial