У меня есть странная проблема, которую я пытаюсь решить сейчас. Я создал веб-приложение, которое получает данные для графика, который отображается с использованием Highcharts.
Сценарий извлекает данные из БД, сохраняет его в файл и отображает граф с использованием метода $.getJson в jquery, который переходит в другой файл ajax и обрабатывает данные, которые были сохранены. Пользователь может потратить х количество времени на просмотр графика, и каждый раз, когда пользователь меняет уровень масштабирования, запрос ajax отправляется обратно на мою страницу ajax, которая снова использует файл сохраненных данных для отправки данных графика обратно.
Проблема заключается в том, что если другой пользователь использует приложение, в то время как исходный пользователь все еще использует график и постоянно обновляется файлом ajax, файл сохраненных данных перезаписывается, а исходный пользователь будет иметь неверные данные графика, отправленные им обратно,
Я считал использовать $ _SESSION, однако данные могут быть очень большими время от времени. Любые другие идеи?
Если у вас несколько пользователей, не используйте одно и то же имя файла для всех пользователей. например
$cache_file = 'cache-' . session_id() . '.txt';
так что файл привязывается к конкретному пользователю.
Вы можете использовать разные файлы для разных пользователей.
Если вы добавите значение session_id()
в ваше имя файла, у вас будут разные файлы для каждого рабочего сеанса.