Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сохранение динамической информации (https://javascript.ru/forum/misc/34294-sokhranenie-dinamicheskojj-informacii.html)

zaytsewa 28.12.2012 06:18

Сохранение динамической информации
 
Вопрос не совсем по javascript, но всё же.

Необходимо как-то сохранять данные, которые пользователь ввёл в динамические элементы формы, те при перезагрузке сценария все эти данные и элементы теряются.

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

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

Как обычно решаются подобные задачи? Создаётся json с текущими данными? Он обновляется при каждом вновь внесённом изменении? Есть ли какие-то стандартные механизмы для решения? или в базу заносить сразу, а потом удалять при несохранении??

Deff 28.12.2012 06:23

Цитата:

Сообщение от zaytsewa
Но что если пользователь не успел закончить работу, навводил данных, а до сохранения не дошёл. Потом происходит какая-либо ошибка, пользователь закрыл окно, прервалось соединение и тд, вообщем при повторной загрузке сценария все данные, набранные пользователем потеряны.
Как обычно решаются подобные задачи?

localStorage, - тут кроссбраузерный вариант http://javascript.ru/forum/project/2...a-ie6-7-a.html

ruslan_mart 28.12.2012 06:29

<?php
session_start();
$_SESSION['MyVar'] = 123;

if($_SESSION['MyVar']) echo $_SESSION['MyVar'];
?>

godofjavascript 28.12.2012 07:40

Deff,
по моему там есть локалсточ не?

UPD: понял

zaytsewa 28.12.2012 12:08

Deff, о точно!!! я про такую штуку в dojo читала))) но с ним у меня не срослось как-то...


Часовой пояс GMT +3, время: 02:14.