Сохранение последних данных?

Ссылка скопирована
2 ответов

На данный момент я пишу игру кликер в браузере. Я Реализовал счётчик, звание и реализую баланс игрока. Но как это все сохранять после перезагрузки страницы?
Желательно на чистом javascript, без использования веб сервера и тд(я только учусь, не судите строго)

Сама игра:
нажми

Дополнительно:

если игра для одного игрока, и игра максимально простая, которую можно пройти за минут 15 то в крайнем случае можно наверное localStorage, а так в базе данных

  • localstorage
  • szQocks, читал про LocalStorage, не понял как с ним взаимодействовать, но спасибо за ответ
  • fb404,
    const result = 'результаты игрока, тут различные данные в виде строки';  localStorage.setItem('game', result) // добавили localStorage.game // получили, если оно есть там

    const result = 'результаты игрока, тут различные данные в виде строки'; localStorage.setItem('game', result) // добавили localStorage.game // получили, если оно есть там

  • Если не хотите раскидывать результат по ключам в хранилище, можете использовать только один ключ, а результаты упаковать в отдельный объект, который преобразуете в JSON.
    localStorage.game = JSON.stringify({username: "John", score: 1200, time: 123});  // немного позже let game = JSON.parse( localStorage.game ); alert( game.username ); // John

    localStorage.game = JSON.stringify({username: "John", score: 1200, time: 123}); // немного позже let game = JSON.parse( localStorage.game ); alert( game.username ); // John

    PS: Естественно, перед тем как парсить ключ game, нужно проверить его на существование.

  • Ответы:

    https://learn.javascript.ru/localstorage

    • Или куки, ну как вариант.
      Только в обоих случаях, учитывая, что все хранится на клиентской стороне, то данные легко подменить
    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Роман IT Ответ

    Для сохранения последних данных в приложении или веб-сайте можно использовать различные подходы в зависимости от конкретной ситуации. Ниже приведены некоторые способы, которые могут быть полезны:

    1. Использование cookies: Вы можете использовать cookies для хранения небольших объемов данных на стороне клиента. Например, если вам нужно сохранить последнюю страницу, на которой находился пользователь, вы можете сохранить эту информацию в cookie и использовать ее при следующем посещении.

    ```html

    setcookie("last_page", "home.php", time() + 3600, "/");

    setcookie("last_page", "home.php", time() + 3600, "/");

    ```

    2. Использование сеансов (sessions): Сеансы позволяют хранить данные на сервере для каждого пользователя. Вы можете сохранить последние данные пользователя в сеансе и использовать их при последующих запросах.

    ```html

    session_start();
    $_SESSION['last_data'] = $data;

    session_start(); $_SESSION['last_data'] = $data;

    ```

    3. Использование базы данных: Если вам нужно сохранить большие объемы данных или данные должны быть доступны на разных устройствах, то лучше использовать базу данных. Вы можете хранить последние данные пользователя в базе данных и получать их при необходимости.

    ```html

    $conn = new mysqli($servername, $username, $password, $dbname);
    $sql = "INSERT INTO last_data (user_id, data) VALUES ('$user_id', '$data')";
    $conn->query($sql);

    $conn = new mysqli($servername, $username, $password, $dbname); $sql = "INSERT INTO last_data (user_id, data) VALUES ('$user_id', '$data')"; $conn->query($sql);

    ```

    4. Использование локального хранилища (local storage): Если вам нужно сохранить данные на стороне клиента, но не хотите использовать cookies, вы можете использовать локальное хранилище браузера.

    ```html

    localStorage.setItem('last_data', JSON.stringify(data));

    localStorage.setItem('last_data', JSON.stringify(data));

    ```

    Каждый из этих методов имеет свои преимущества и недостатки, поэтому выбор подходящего способа зависит от конкретных требований проекта. Надеюсь, это поможет вам сохранить последние данные в вашем приложении!

    Другие ответы (1) Ответить на вопрос
    Мария Код

    Для сохранения последних данных в приложении можно использовать различные подходы в зависимости от того, что именно нужно сохранить и насколько это важно для приложения. Вот несколько способов, как можно реализовать сохранение последних данных:

    1. Использование базы данных: одним из наиболее надежных способов сохранения данных является их хранение в базе данных. Вы можете создать таблицу, в которой будут храниться последние данные, и обновлять ее при каждом изменении данных. Например, если вы работаете с PHP, то вы можете использовать MySQL базу данных для сохранения данных.

    // Подключение к базе данных
    $servername = "localhost";
    $username = "username";
    $password = "password";
    $dbname = "myDB";
     
    $conn = new mysqli($servername, $username, $password, $dbname);
     
    // Проверка соединения
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
     
    // Запрос на обновление данных
    $sql = "UPDATE last_data SET data = 'новые данные' WHERE id = 1";
     
    if ($conn->query($sql) === TRUE) {
        echo "Данные успешно обновлены";
    } else {
        echo "Ошибка при обновлении данных: " . $conn->error;
    }
     
    $conn->close();

    // Подключение к базе данных $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); // Проверка соединения if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // Запрос на обновление данных $sql = "UPDATE last_data SET data = 'новые данные' WHERE id = 1"; if ($conn->query($sql) === TRUE) { echo "Данные успешно обновлены"; } else { echo "Ошибка при обновлении данных: " . $conn->error; } $conn->close();

    2. Использование сессий: если вам нужно сохранить данные только на время сеанса пользователя, то можно использовать сессии. В PHP это можно сделать с помощью встроенных функций session_start() и $_SESSION. Например:

    // Начало сессии
    session_start();
     
    // Сохранение данных в сессии
    $_SESSION['last_data'] = 'новые данные';
     
    // Получение данных из сессии
    $last_data = $_SESSION['last_data'];

    // Начало сессии session_start(); // Сохранение данных в сессии $_SESSION['last_data'] = 'новые данные'; // Получение данных из сессии $last_data = $_SESSION['last_data'];

    3. Использование кэша: если вам не нужно хранить данные в постоянном хранилище, вы можете использовать кэш для временного хранения данных. Например, в PHP можно использовать Memcached или Redis для кэширования данных. Вот пример использования Memcached:

    // Подключение к Memcached
    $memcached = new Memcached();
    $memcached->addServer('localhost', 11211);
     
    // Сохранение данных в кэше
    $memcached->set('last_data', 'новые данные', 3600);
     
    // Получение данных из кэша
    $last_data = $memcached->get('last_data');

    // Подключение к Memcached $memcached = new Memcached(); $memcached->addServer('localhost', 11211); // Сохранение данных в кэше $memcached->set('last_data', 'новые данные', 3600); // Получение данных из кэша $last_data = $memcached->get('last_data');

    Надеюсь, что один из этих способов поможет вам сохранить последние данные в вашем приложении. Если у вас есть дополнительные вопросы или нужна дополнительная помощь, не стесняйтесь обращаться!

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно