Редактирование содержимого БД с помощью динамической формы / веб-страницы

Я ищу совета о том, какие инструменты и ресурсы использовать, и читаю, чтобы решить мою проблему.

Проект представляет собой веб-сайт, управляемый базой данных, созданный с использованием php, html, css, sql и некоторого javascript.

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

Вместо того, чтобы обновлять БД после каждого изменения, я хотел бы, чтобы пользователь мог вносить все изменения на стороне клиента, чтобы веб-страница динамически изменялась, чтобы отображать эти изменения, а затем при нажатии кнопки сохранения PHP напишет соответствующий запросы и исправления БД.

Если бы это была простая структура, я бы мог сделать это с помощью простой текстовой формы. К сожалению, это немного сложнее. База данных предназначена для регистрации походов, и я хочу дать пользователю возможность «удалить друга» из поездки. Это будет включать в себя людей, перечисленных в поездке, с кнопкой удаления рядом с их именем, когда пользователь нажимает эту кнопку удаления, я хотел бы, чтобы имя было удалено с веб-страницы, и изменения вносятся в БД только после нажатия кнопки сохранения. .

Я только начинаю эту часть своего проекта, и у меня еще нет кода, но я хочу сначала прочитать и узнать о правильных вещах, чтобы начать работу.

Я самоучка и имею некоторые базовые знания о php, html, css, sql, и мне довольно успешно удалось реализовать код javascript других людей в моем проекте.

Спасибо, что нашли время прочитать это. Надеюсь, я ясно описал свою проблему, и если у вас есть какие-либо вопросы, не стесняйтесь их спрашивать.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
0
39
1

Ответы 1

Используя технологии, которые вы используете, я бы сделал это путем создания объектной модели для отслеживания изменений ваших объектов в вашем клиентском javascript.

Вам также понадобится объектная модель для самих сущностей в клиентском javascript. Это связано с тем, что, если вы не обновляете сущности на сервере, их перезагрузка оттуда переопределит изменения, уже сделанные пользователем.

Шаг 1 означает, что все сущности, которые пользователь отображает / которые доступны для изменения, должны быть «кэшированы» на стороне клиента в объектах javascript и оттуда отображаться на странице.

Шаг 2 будет им, чтобы представить объектную модель, которая будет отслеживать изменения. Объект может выглядеть так:

{
  "changeType": "remove-friend-from-trip",
  "friendId": 12,
  "tripId": 27
}

И всякий раз, когда пользователь вносит изменение, вы должны помещать это изменение как объект javascript в локальную коллекцию, где вы сохраняете все изменения. Вы также должны обновить отображаемый локальный объект javascript.

Шаг 3 будет реализовывать логику функции «сохранения» для страницы. Он должен пройти через локальную коллекцию отслеживаемых изменений и перевести их в соответствующие сообщения на веб-сервере.

И проблема здесь может заключаться в обработке локальных объектов между перезагрузками полной страницы, я думаю, это должно быть на основе файлов cookie - чтобы выжить. Если приложение уже не является SPA.

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

Большое спасибо за ответ. Здесь есть что посмотреть и что именно мне нужно было для начала.

David Jack 02.05.2018 10:45

Другие вопросы по теме