Моя проблема довольно проста. У меня есть система входа, построенная с использованием php, базы данных mysql и ajax. Все работало до сегодняшнего дня, когда я обнаружил очень потенциальную проблему, которая может полностью запутать систему. У каждого пользователя в базе данных есть идентификатор, который автоматически генерируется путем установки автоинкремента для столбца идентификатора, чтобы дать ему уникальный идентификатор. Теперь моя проблема в том, что, например, моя система чата пытается отобразить всех пользователей в комнате. Ну, идентификатор для моего первого пользователя равен 1, а идентификатор для второго пользователя - 104. Итак, php извлекает все идентификаторы пользователей из базы данных, которая хранится в этом формате:
user1id,user2id,user3id
и так далее. Но когда php ищет эти идентификаторы для идентификатора # 1, чтобы увидеть, существует ли он, он находит 1 в идентификаторе 104. Вот где начинается проблема. Чувствуя, что пользователь уже подключен, php соответствующим образом меняет запись и обновляет список пользователей следующим образом: 04,1
. Это было 104,1
раньше. Теперь скрипт пытается найти имя пользователя для id # 04, который не существует. Поэтому указан неправильный список пользователей в комнате. Теперь самое разумное решение этого вопроса, я думаю, состоит в добавлении 0 перед более короткими идентификаторами, поэтому вместо 104,1
это 104,001
. Но как именно это сделать с автоматическим приращением? Заранее спасибо.