841kks
Новичок
Приветствую участников форума.
Если есть возможность прошу помочь.
У меня есть бд (MySQL или SQlite) b web-интерфейс для работы с данными из базы. Система многопользовательская.
Собственно, у меня два вопроса:
1. Как можно правильно реализовать запрет изменения одних и тех же данных одновременно несколькими пользователями? Т.е. пользователь 1 заходит на форму и начинает редактировать запись в бд. в это же время пользователь 2 заходит тоже на форму и тоже начинает изменять данные.
С точки зрения интерфейса, все понятно, если кто-нибудь из пользователей начал редактировать запись в бд, то для остальных форма для редактирования должна быть недоступна. А как реализовать это программно? т.е. в каждой таблице в бд делать отдельное поле (флаг) и когда пользователь заходит на форму редактирования, помечать этот флаг, и при попытке другого пользователя зайти на форму редактирования проверять этот флаг и не давать доступ к форме редактирования?
Я думаю, что такая ситуация стандартная и она стандартно должна как-то решаться.
2. Есть таблица в которой отображаются записи из бд. Таблицу смотрят несколько пользователей. Один из пользователей внес изменения в базе, как программно можно сделать, чтобы у всех пользователей обновился интерфейс и пользователи видели уже таблицу с измененными данными.
В программе для PC понятно как сделать, при внесении изменений в базе устанавливается какой-то флаг, запустить таймер в котором будет опрашиваться значение этого флага, и если он изменился, то в пользовательском интерфейсе обновить таблицу или просто выдать уведомление, что данные в базе изменились.
А как это грамотно реализовать для web-интерфейса средствами php и java скриптов?
Понятно что можно сделать кнопку "Обновить" (чтобы обновить таблицу с новыми данными из базы) но надо все равно как-то понять пользователям что кто-то изменил данные и надо обновить таблицу.
Очень надеюсь на помощь. Прошу сильно не критиковать, если спрашиваю элементарные вещи, я ищу примеры решения моих вопросов, чтобы можно было на примере понять суть как это грамотно реализовать.
Недавно разобрался с технологией Ajax, и теперь активно применяю это в своей работе, хотелось бы найти ответы на два своих вопросах, чтобы понимать механизм и использовать это в своей работе.
Всем откликнувшимся заранее огромное спасибо.
Если есть возможность прошу помочь.
У меня есть бд (MySQL или SQlite) b web-интерфейс для работы с данными из базы. Система многопользовательская.
Собственно, у меня два вопроса:
1. Как можно правильно реализовать запрет изменения одних и тех же данных одновременно несколькими пользователями? Т.е. пользователь 1 заходит на форму и начинает редактировать запись в бд. в это же время пользователь 2 заходит тоже на форму и тоже начинает изменять данные.
С точки зрения интерфейса, все понятно, если кто-нибудь из пользователей начал редактировать запись в бд, то для остальных форма для редактирования должна быть недоступна. А как реализовать это программно? т.е. в каждой таблице в бд делать отдельное поле (флаг) и когда пользователь заходит на форму редактирования, помечать этот флаг, и при попытке другого пользователя зайти на форму редактирования проверять этот флаг и не давать доступ к форме редактирования?
Я думаю, что такая ситуация стандартная и она стандартно должна как-то решаться.
2. Есть таблица в которой отображаются записи из бд. Таблицу смотрят несколько пользователей. Один из пользователей внес изменения в базе, как программно можно сделать, чтобы у всех пользователей обновился интерфейс и пользователи видели уже таблицу с измененными данными.
В программе для PC понятно как сделать, при внесении изменений в базе устанавливается какой-то флаг, запустить таймер в котором будет опрашиваться значение этого флага, и если он изменился, то в пользовательском интерфейсе обновить таблицу или просто выдать уведомление, что данные в базе изменились.
А как это грамотно реализовать для web-интерфейса средствами php и java скриптов?
Понятно что можно сделать кнопку "Обновить" (чтобы обновить таблицу с новыми данными из базы) но надо все равно как-то понять пользователям что кто-то изменил данные и надо обновить таблицу.
Очень надеюсь на помощь. Прошу сильно не критиковать, если спрашиваю элементарные вещи, я ищу примеры решения моих вопросов, чтобы можно было на примере понять суть как это грамотно реализовать.
Недавно разобрался с технологией Ajax, и теперь активно применяю это в своей работе, хотелось бы найти ответы на два своих вопросах, чтобы понимать механизм и использовать это в своей работе.
Всем откликнувшимся заранее огромное спасибо.