Если пользователь завершает уровень, а затем остается на той же странице, выполняя дополнительную работу:
Тогда вы, вероятно, захотите, чтобы Ajax отправил информацию о новом уровне на сервер, как только будет достигнут новый уровень. Таким образом:
Используйте куки для хранения вашего идентификатора сессии php
В своем клиенте Javascript используйте Ajax для вызова URL-адреса php на вашем сервере всякий раз, когда пользователь выходит на новый уровень. Отправить новый уровень в качестве параметра. Можно использовать POST или GET, не имеет значения.
Программа php получит идентификатор сессии в файле cookie и новый уровень в качестве параметра. Программа php найдет идентификатор пользователя из идентификатора сеанса и сохранит новый уровень в базе данных.
В следующий раз, когда будет вызван основной URL-адрес программы php, он сможет посмотреть уровень пользователя.
Если пользователь нажимает кнопку «Далее», чтобы перейти к следующему уровню:
Используйте Javascript, а не Ajax, чтобы изменить параметры POST кнопки «Далее».
Вы бы использовали POST, а не GET, поскольку просмотр URL-адреса foo.com/game?level=5 слишком очевиден для людей, чтобы обманывать вашу игру. POST не будет показывать параметр уровня в URL. Больше безопасности: добавьте параметр контрольной суммы.
Если что-либо из перечисленного не понятно, задайте его в комментариях или в качестве дополнительного вопроса.