2016-04-08 3 views
0

Я создаю раздел профиля сайта php. Он предлагает раздел редактирования профиля. Скажем, у меня есть данные user_id, user_name, user_firstname, user_lastname, user_email в переменной $ _SESSION.Обновление атрибутов/полей, которые были изменены PHP

Итак, если какой-либо пользователь редактирует какие-либо из этих атрибутов, перейдя в localhost/profile/edit, , как мне следует обновлять столбцы базы данных, которые были изменены?

ie 1. Следует ли сравнивать данные сообщения с моей переменной сеанса и обновлять только измененные поля? Но я не знаю, как это реализовать.

  1. Должен ли я обновлять все поля?

  2. SOme другой стандартный способ делать вещи?

Если вам нужно уточнить, то дайте мне знать.

+0

@Federico Можете ли вы уточнить. Как я могу использовать реляционное сопоставление объектов с этим? – TradeRaider

+1

Вы не делаете такие вещи «вручную», но обычно используете или реализуете нечто вроде ORM, объектного реляционного картографа, который принимает объект (со всеми его свойствами) и превращает его в массив, который может храниться внутри таблицы ряд. Внутри ORM вы выполняете действия по созданию и обновлению. Если действие обновления перезаписывает все или только измененные столбцы, это не имеет особого значения, особенно для внешнего мира. – arkascha

+0

@arkascha: Эй. Можете ли вы дать мне ссылку, чтобы начать с нее? – TradeRaider

ответ

3

Между обновлением всех полей и только по полю это зависит от вас. В перспективе REST вы должны использовать PUT для обновления всего ресурса и PATCH для обновления только одного поля ресурса. Так что я думаю, это действительно зависит от вас!

В любом случае, поток должен быть:

  • обновление таблицы (одно поле или много)
  • обновление сессии
+0

Я не вижу, как это отвечает на вопрос OPs ... – arkascha

Смежные вопросы