![]() |
Ответ: Определить количество записей, вставить запись?
Если количество людей нумируеться изначально с еденицы и никого не игнорит, то можно и так в конце концов сделать:
-сначала вставить в таблицу данные пользователя -$id=mysql_insert_id(); -if($id<=10){Оставляем, выводим приняты} -else{Удаляем, выводям не приняты} Условие зависит от того, как в базе храниться...модами поиграться например. При разрешении будет один запрос, при запрете - 2. ЗЫ Если людей больше 10 уже, то блочим кнопочку подать заявку, что бы лишних неровов не было :3 |
Ответ: Определить количество записей, вставить запись?
А если одна из записей промежутка id = (1; N) удалена, то промежуток чисел не сплошной и алгоритм валится =)
|
Ответ: Определить количество записей, вставить запись?
Цитата:
|
Ответ: Определить количество записей, вставить запись?
Мы с вами точно говорим об одном и том же?
Моя точка зрения: Пускай даны записи ((1, *), (2, *), (3, *), (4, *), (5, *), (6, *), (7, *), (8, *), (9, *), (10, *)). Ваш алгоритм работает - mysql_insert_id() возвращает 10, добавление не происходит. Но вот в какой-то момент исчезают записи (3,*), (7,*), (4,*). Имеем теперь набор ((1, *), (2, *), (5, *), (6, *), (8, *), (9, *), (10, *)). mysql_insert_id() по-прежнему возвращает 10, алгоритм не работает - запись добавить-то можно. В PostgreSQL немного иной принцип работы этих счетчиков - можно оперировать ими как необходимо то. В MySQL этого нет, посему есть лишь два способа переопределить поведение поля auto_increment:
|
Ответ: Определить количество записей, вставить запись?
В первом посте ничего не говорилось о возможности удаления, поэтому и предложил самый простой для меня вариант. Да, мы говорим об одном и том-же, но я писал обязательным условием последовательность этих записей без удаления промежуточных...
Если мой способ не подходит (слишком сложный в реализации для данной базы данных), то можно ппопробовать транзакции, может быть я их просто не допонял Тт" Разберусь надеюсь) |
Часовой пояс GMT +4, время: 06:56. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot