Вы можете запретить другим редактировать текст, пока это делает первый пользователь (тот, кто вошел первым). Для этого вы можете добавить еще один файл. json, чтобы сохранить последние действия пользователей в порядке их времени входа в систему. Например, предположим, что пользователь один вошел в систему по номеру 1585844170 (значение time()
), а через 1 пользователь user2. Таким образом, в настоящее время у нас есть это содержание в действии. json
{
"user1": 1585844170
"user2": 1585844171
}
Через простой интервал javascript (используя Ajax) мы можем обновлять это действие, скажем, каждые 1000 мс. В качестве таймаута, когда мы не получаем запрос на обновление в этот раз, скажем, через 5 секунд мы считаем, что пользователь ушел. Поэтому каждый раз, когда пользователь отправляет запрос на обновление времени активности, он получает json, в результате чего он говорит, что он может начать редактирование еще или нет. Например:
{
"updated": true,
"editable": false,
"editingBy": "user1"
}
Таким образом, когда значение editable равно true, мы можем включить ввод (textareas et c) и позволить пользователю начать печатать! Также вы можете показать, кто сейчас редактирует!
Чтобы лучше это понять, допустим, что user1 пропал (никаких обновлений активности для него за последние 5 с), а теперь user2 отправляет запрос активности обновления. В этом случае user1 будет удален, а user2 теперь может редактировать текст.
{
"user2": 1585844190
}
Примечание
1. Когда вы получите запрос на редактирование текста в вашем файле php, вы также должны проверить, разрешен ли пользователь, или нет (поскольку этот пользователь может редактировать javascript)
2. Вы можете создать функцию для изменения файла активности. json и запускать ее каждый раз при получении запроса от пользователя.