Духовность™
Продвинутый новичок
Размышления на тему создания записей и показа форм
Классическая форма добавления записи в базу выглядит примерно так:
Проблема: создавать пустые переменные в программе, делать проверку на ID и в зависимости от ID делать UPDATE или INSERT.
Ситуация.
Допустим, у нас в системе зарегистрировался пользователь. Пользователь хочет добавить на сайт какие-то данные (резюме, например). Пользователь кликнет на ссылку "добавить резюме" и ему показывается форма. Никакой учетной записи его резюме не создано, в таблице резюме нет записи с его ID. Она появится только тогда, когда пользователь введёт правильно все данные и нажмет кнопку "сохранить".
Что придумалось.
Кликая по ссылке "создать резюме" автоматически создается пустая запись в БД ассоциирующаяся с этим пользователем и только после этого мы делаем referer на форму добавления резюме. Т.е. фактически резюме уже создано, ему присовин ID. Отличие лишь в том, что поля формы пустые, по дефолту.
Чем выгодно: алгоритм сценария резюме теперь выглядит так:
как видно, количество действий сократилось. Теперь сценарий занимается только тем, что работает на UPDATE. "Никаких проверок" на существование ID резюме, никаких ветвлений. Для больших и сложных программ это очень позитивно, ИМХО.
Ваши мнения слушаю.
Классическая форма добавления записи в базу выглядит примерно так:
Код:
Если POST
Проверить данные
Данные верны
Записать их в базу
Если ID существует
обновление
Иначе
вставка
Данные не верны
подставить значения из POST в переменные формы
Если иначе GET
Если есть ID записи
Выбрать записи, поместить их в переменные для подстановки в формы
Иначе
Инициализировать переменные с пустыми значениями
Показать форму
Ситуация.
Допустим, у нас в системе зарегистрировался пользователь. Пользователь хочет добавить на сайт какие-то данные (резюме, например). Пользователь кликнет на ссылку "добавить резюме" и ему показывается форма. Никакой учетной записи его резюме не создано, в таблице резюме нет записи с его ID. Она появится только тогда, когда пользователь введёт правильно все данные и нажмет кнопку "сохранить".
Что придумалось.
Кликая по ссылке "создать резюме" автоматически создается пустая запись в БД ассоциирующаяся с этим пользователем и только после этого мы делаем referer на форму добавления резюме. Т.е. фактически резюме уже создано, ему присовин ID. Отличие лишь в том, что поля формы пустые, по дефолту.
Чем выгодно: алгоритм сценария резюме теперь выглядит так:
Код:
Если POST
Проверить данные
Данные верны
Записать их в базу
Данные не верны
подставить значения из POST в переменные формы
Если иначе GET
Выбрать записи, поместить их в переменные для подстановки в формы
Показать форму
Ваши мнения слушаю.