Не храните ничего в базах данных, пока все шаги не будут выполнены - PullRequest
0 голосов
/ 11 апреля 2019

Я хочу сделать мастер-интерфейс с несколькими формами и отправкой. Я делаю вызов API при каждом представлении. Если одна из форм не удалась или пользователь вышел из середины, я хочу, чтобы она вернула все обратно в базу данных, но я также сохраняю их прогресс. Возможно ли что-то подобное?

Я думал о том, чтобы иметь metadata таблицу, в которой я храню данные JSON для форм после каждого вызова API

metadata структура таблицы

| apicall             | data          | method  | email       |
| ------------------- |:-------------:|:-------:| -----------:|
| /api/organization/1 | {json: data}  | POST    | abc@abc.com |
| /api/role/1         | {json: data}  | POST    | abc@abc.com |

и после того, как все шаги выполнены, выполните эту таблицу и вызовите все эти API для хранения данных в надлежащих таблицах.

Есть ли лучший способ сделать это? Я также думал просто добавить столбец inprogress флаг. Но есть много устаревшего кода, который использует эти таблицы независимо от столбца inprogress.

1 Ответ

0 голосов
/ 11 апреля 2019

У вас есть два основных варианта:

  • Использовать либо локальное хранилище javascript, и отправлять все на последнем шаге в качестве запроса.

или

  • Используйте переменную $ _SESSION, чтобы сохранить данные и обработать их на последнем шаге.Убедитесь, что ваши скрипты начинаются с session_start ();или у вас не будет доступа к вашей $ _SESSION.

Последний вариант будет проще реализовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...