Разрыв сети потеря данных. Ищется решение!

#1 1 августа 2018 в 09:49
Привет всем. Как правило иногда люди находятся в дороге и пишут всякие свои заметки на сайте. Но вот случается такое дело когда при отправке данных вываливается белая страница браузера с надписью потеря сети. И все что человек нафантазировал ушло в небытие. ВК решили проблему, там если связь рвется их запись висит как неотправленая а при обновлении старницы если ты не отправил она ввобще пишется в форму. Есть подозрение что там при наборе текста все пишется в куки и проверяется добавилось оно на сайт или нет.
Отсюда вопрос, как бы нам тут реализовать такую штуку?
может тоже по keyup добавлять информацию в куки а при отправке проверять. запись добавлена удалять куку… нет заполнить форму..
Никто не озадачивался этим? Или может есть уже готовое решение?
#2 1 августа 2018 в 09:58
На первой ветке в статьях это реализовано. Просто нажимаешь "назад" и возвращается заполненная форма.
#3 1 августа 2018 в 10:00


На первой ветке в статьях это реализовано. Просто нажимаешь "назад" и возвращается заполненная форма.

@chameleon9
А как там реализовано? Может портировать на вторую ветку можно быстро?
#4 1 августа 2018 в 10:02


А как там реализовано? Может портировать на вторую ветку можно быстро?

Рачей

  1.  
  2. if($errors) {
  3. // При добавлении статьи при ошибках сохраняем введенные поля
  4. cmsUser::sessionPut('article', $article);
  5. cmsCore::redirectBack();
  6. }
  7.  
Это уже сложнее, тут нужен спец
#5 1 августа 2018 в 10:34


Это уже сложнее, тут нужен спец

@chameleon9

в каком файле первой ветки это? полный путь если можно.
#6 1 августа 2018 в 11:37
/components/content/frontend.php
#7 1 августа 2018 в 12:06
@chameleon9, в первой ветке это касается обнаруженных ошибок в заполненной форме и переданной на обработку сайту. Во второй ветке, это тоже реализовано, но это никак не связано с обрывом сети или недоступностью сайта после отправки данных на сайт.

ВК решили проблему

Рачей
Видимо речь идёт о приложении для мобильника?
#8 1 августа 2018 в 12:30


Видимо речь идёт о приложении для мобильника?

Loadырь
нет, с приложением там все понятно. речь идет о браузерной версии сайта. у меня в компе постоянно она включена. возможно они используют куки.
А что если при кейап менять аяксом содержимое этой куки и после того как статья добавится удалять ее? а при создании статьи снова создавать и заполнять?
#9 1 августа 2018 в 13:17


в первой ветке это касается обнаруженных ошибок в заполненной форме и переданной на обработку сайту.

Loadырь
Я раза четыре, на новом сайте, сталкивался с подобной проблемой,- на мобильном интернете сидел.
Так что, сказать спасибо браузеру или всё же где-то в коде?
Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст

Действительно, закомментировал условие, заполнил поля, отключил интернет,- все поля сохранились.
Значит что то другое
#10 1 августа 2018 в 23:16
@chameleon9, Скорее браузеру, нет там такого.

А авто сохранение возможно в черновик реализовать или это будет грузить сервер?

З.ы. неомесенджер, по крайне мере на первой ветке чётко сохраняет, если что то написал и не отправил, то хранится будет веками… Вопрос как и в чем отличие?
#12 2 августа 2018 в 12:33
вот тут есть такая тема

  1.  
  2. <script>
  3. var elements = document.querySelectorAll('input, textarea');
  4. function checkValidity() {};
  5. for (i=0; i<elements.length; i++) {
  6. (function(element) {
  7. var id = element.getAttribute('id');
  8. element.value = localStorage.getItem(id); // обязательно наличие у элементов id
  9. element.oninput = function() {
  10. localStorage.setItem(id, element.value);
  11. checkValidity();
  12. };
  13. })(elements[i]);
  14. }
  15. </script>
  16.  
Пишет в локал сторадж данные… пробую поставить в форму, локально на простом файлике работает, пока не удалишь из стораджа данные, а на сайте нифига… наверное что-то не догоняю.
Посмотрел вывод в консоль, на добавлении типа контента туда заполняются технические данные… видимо как-то это реальзовано уже но дл технических… а туда бы еще засунуть данные которые заполняются пользователем, и после успешной отправки их просто
  1. localStorage.clear();
ну или по ключам удалить что не нужно, а что нужно оставить…
#13 2 августа 2018 в 13:23
Рачей, это где такое, не ищется поиском?
#14 2 августа 2018 в 13:30


Рачей, это где такое, не ищется поиском?

Александр
это я нашел как реализовать вообще. а поиском нади по localStorage там есть в скриптах это…
#15 6 августа 2018 в 19:01
Рачей, как успехи? Я так понимаю тема то правильная, с безопасностью тоже не должно быть проблем
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.