Я столкнулся с проблемой архитектуры, которую мне не удалось решить. Я разрабатываю небольшую игру на PHP и Javascript, и мне нужно сохранить прогресс пользователя. Теперь проблема в том, что PHP не может определить, когда пользователь выигрывает уровень: это делается в Javascript. Есть ли способ сохранить прогресс пользователя, когда он победит на уровне?
Например, когда пользователь выигрывает уровень 1, он получает доступ к уровню 2. Если он пытается получить доступ к уровню 2 без завершения предыдущего уровня, он перенаправляется на последний завершенный. В моем контроллере я делал следующее:
if (1 !== $id) { if ($app['session']->get('last_level') !== ($id - 1)) { // redirect the user } }
Теперь мне нужен способ сохранить значение last_level в сеансе, операцию, которая не может быть смоделирована пользователем.
Любые намеки?