|
|
|
| Возникла проблема с сохранением значения в форме.
У меня есть форма с несколькими полями, в которых вводится произвольный текст. Форма передает данные для обработки другому скрипту и если все поля заполнены, текст помещается в базу данных.
Собственно проблема в том, что если не все поля заполнены, я выдаю сообщение об ошибке и прошу вернуться и заполнить все поля. Но когда возвращаешься, то поля очищаются.
Можно ли каким-то образом подставить введенные ранее данные в поля, чтобы не пришлось вводить их снова?
Покопался в интернете, советуют использовать сессии, но на мой взгляд это не очень красиво. | |
|
|
|
|
|
|
|
для: uch
(14.04.2011 в 20:13)
| | >Покопался в интернете, советуют использовать сессии, но на мой взгляд это не очень красиво.
Да, это не удобно, но зато надежно, особенно, если форма у вас имеет несколько страниц. Если страница одна вполне можно обойтись POST-данными, разместив форму и её обработчик на одной странице (обработчик можно подключить при помощи include). | |
|
|
|
|
|
|
|
для: cheops
(14.04.2011 в 21:12)
| | А можно ли POST-данные загнать например в переменную и как-нибудь подставить в поле? | |
|
|
|
|
|
|
|
для: uch
(14.04.2011 в 22:08)
| | POST-данные и так находятся в массиве $_POST, можно их использовать. | |
|
|
|
|
|
|
|
для: cheops
(14.04.2011 в 23:13)
| | Использовать можно примерно так?
<textarea class=input name=body rows=10 cols=60><?php echo htmlspecialchars($body); ?></textarea>
|
Не соображу только как мне при возврате на страницу с формой подставлять. | |
|
|
|
|
|
|
|
для: uch
(15.04.2011 в 00:01)
| | Да, совершенно верно.
>Не соображу только как мне при возврате на страницу с формой подставлять.
Если возврат осуществляется при помощи конопки назад, то старые значения (за исключением файлов и паролей) останутся заполненными. Если же возврат идет при помощи гиперссылки, то лучше воспользоваться сессиями. | |
|
|
|
|
|
|
|
для: cheops
(15.04.2011 в 00:27)
| | Я еще попробовал выводить такое сообщение:
<a href=form.php onClick='history.back()'>Вернуться назад</a>
|
Но, переходя по ссылке. поля все же очищаются.
Спасает только в браузере кнопка "Назад". | |
|
|
|
|
|
|
|
для: uch
(15.04.2011 в 13:15)
| | Мне как раз подобную штуку сейчас надо делать, я чуть позже покажу удобное для меня решение, а там решишь как тебе сделать. | |
|
|
|
|
|
|
|
для: uch
(15.04.2011 в 13:15)
| | Почему у вас в профиле не указан e-mail? | |
|
|
|
|
|
|
|
для: deimand
(17.04.2011 в 01:11)
| | Сейчас указал.
Буду благодарен за помощь. | |
|
|
|
|
|
|
|
для: uch
(14.04.2011 в 20:13)
| | сесси некрасиво, можно ещё в куки запихнуть, в последних версиях браузеров есть локальное хранилище(SQLite) с помощью javascript можно создавать таблицы и сохранять данные(HTML5) | |
|
|
|
|
|
|
|
для: Красная_шляпа
(14.04.2011 в 21:12)
| | Куки мало данных хранят, яваскрипт тоже не у всех бывает. Мобильники например, на таких устройствах вообще обидно данные потерять, это не с клавиатуры набирать.
Сессия самый надежный вариант будет. | |
|
|
|
|
|
|
|
для: deimand
(15.04.2011 в 05:10)
| | Можно и на CURL замутить... | |
|
|
|
|
|
|
|
для: Tamplier
(15.04.2011 в 17:59)
| | Это как? | |
|
|
|