В общем в двух словах задумка такая:
Юзер заполняет форму и нажимает отправить
Если все гуд, тот тут все понятно.
А если допущена ошибка при заполнении какого либо поля, юзеру надо дать в лоб формой с подсветкой не верно заполненного поля и при всем этом сохранить содержимое всех полей ввода. Пока думаю так:
Проверяю поле и если есть ошибка создаю $_SESSION['error']['имя поля'] = 1;
потом проверяю существует ли $_SESSION['error'] и если существует, записываем значения всех полей в $_SESSION['data'] = array("поле" => "значение" ...);
и отправляю обратно к форме, вот и интересно правилен ли такой подход?
Собственно интересует не реализация, а сам ее механизм. Спасибо.
1. snikers987 - 25 Октября, 2011 - 22:58:52 - перейти к сообщению
2. jarosluv - 25 Октября, 2011 - 23:21:20 - перейти к сообщению
Зачем всё усложнять с сессиями? Ведь данные из формы у тебя хранятся в массиве $_POST, следовательно его и проверяй.
3. snikers987 - 25 Октября, 2011 - 23:29:53 - перейти к сообщению
jarosluv пишет:
Зачем всё усложнять с сессиями? Ведь данные из формы у тебя хранятся в массиве $_POST, следовательно его и проверяй.
Обработчик и форма 2 разные страницы, если данные не верны, то редирект на форму, как по твоему должен POST передаться в форму?
(Добавление)
появилась идея, попробую отпишусь
4. DlTA - 25 Октября, 2011 - 23:36:25 - перейти к сообщению
snikers987 пишет:
как по твоему должен POST передаться в форму
как обычно
CODE (html):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <input value='<?=@$_POST['varname']?>' name='varname'>....
(Добавление)
хотя если надо редирект
то тогда в сессию