18.02.2013, 15:25
|
Интересующийся
|
|
Регистрация: 18.02.2013
Сообщений: 11
|
|
сохранение/вывод данных, введенных в форму после вывода ошибки
Здравствуйте, столкнулся с непреодолимой для меня проблемой. Казалось бы тривиальная задача, но... Ситуация такая: Нужно сохранять заполненные поля формы, если выдается ошибка. Перепробовал и готовые скрипты и сам пытался написать, не вышло. Может местные умельцы смогут помочь.
|
|
18.02.2013, 15:32
|
Профессор
|
|
Регистрация: 12.12.2012
Сообщений: 1,398
|
|
Сообщение от johnsnow91
|
Ситуация такая: Нужно сохранять заполненные поля формы, если выдается ошибка.
|
Что это значит? Какая ошибка?
Создайте массив со значениями из полей и всегда сможете вернуть их в случае чего.
|
|
18.02.2013, 22:07
|
Профессор
|
|
Регистрация: 04.02.2011
Сообщений: 1,815
|
|
какая ошибка ?
Заполняется форма, нажимается отправить. На сервере происходит ошибка, и после перезагрузки страницы вы видите пустые формы ?
Тобишь форма отправляется на сервер post/get запросом без использования ajax ?
Всё верно ???????????
Если да, то это проблема не клиента а сервера, jQuery тут не причём.
пример php
если его запустить то переменная comment из post запроса снова окажется в поле comment.
<textarea name="comment" cols="40" rows="3"><?=$_POST['comment'] ?></textarea>
Смотрите работа с формами на Php если используете php конечно, если пишите на другом языке ищите пример на него.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме
Последний раз редактировалось DjDiablo, 19.02.2013 в 02:00.
|
|
22.02.2013, 15:09
|
Интересующийся
|
|
Регистрация: 18.02.2013
Сообщений: 11
|
|
Сообщение от DjDiablo
|
какая ошибка ?
Заполняется форма, нажимается отправить. На сервере происходит ошибка, и после перезагрузки страницы вы видите пустые формы ?
Тобишь форма отправляется на сервер post/get запросом без использования ajax ?
Всё верно ???????????
Если да, то это проблема не клиента а сервера, jQuery тут не причём.
пример php
если его запустить то переменная comment из post запроса снова окажется в поле comment.
<textarea name="comment" cols="40" rows="3"><?=$_POST['comment'] ?></textarea>
Смотрите работа с формами на Php если используете php конечно, если пишите на другом языке ищите пример на него.
|
Всё верно, но вот дело в том, что форма написана на HTML и когда я встраиваю
<textarea name="comment" cols="40" rows="3"><?=$_POST['comment'] ?></textarea>
, у меня админка коментит код вот таким образом: <!--?=$_POST['comment'] ?-->
|
|
22.02.2013, 16:14
|
Профессор
|
|
Регистрация: 04.02.2011
Сообщений: 1,815
|
|
Движок какой, и куда именно вы встраиваете ?
__________________
Лучше калымить в гандурасе чем гандурасить на колыме
|
|
25.02.2013, 08:25
|
Интересующийся
|
|
Регистрация: 18.02.2013
Сообщений: 11
|
|
Сообщение от DjDiablo
|
Движок какой, и куда именно вы встраиваете ?
|
Движок - никому неизвестная active portal lite cms, редактор там стоит ckedit, вроде. Я в редакторе сделал форму и подключил к ней скрипт-обработчик на php. Могу и ссылку на сайт прислать, если здесь это не запрещено.
|
|
25.02.2013, 08:53
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
johnsnow91, для начала сделайте валидацию полей (есть плагины для jquery) на javascript. Чтобы некорректная форма даже не смогла отправиться. Если не все можно проверить на клиенте - делайте ajax-запросы на сервер для валидации на сервере.
Далее, если есть желание и возможность, сделайте проверку полей на сервере (она вроде у вас уже есть), и если есть ошибки, прописывайте value полям формы значения из POST массива параметров. Так форма будет уже заполненной.
Впринципе можно сделать только первое, или второе. Но лучше и то и это.
|
|
25.02.2013, 09:14
|
Интересующийся
|
|
Регистрация: 18.02.2013
Сообщений: 11
|
|
Сообщение от danik.js
|
Далее, если есть желание и возможность, сделайте проверку полей на сервере (она вроде у вас уже есть), и если есть ошибки, прописывайте value полям формы значения из POST массива параметров.
|
как раз вот это я и пробовал сделать и получается, что пхп код просто выводится в поле, вместо срабатывания
|
|
25.02.2013, 09:58
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Сообщение от johnsnow91
|
пхп код просто выводится в поле, вместо срабатывания
|
ПХП код исполняется во всех файлах с расширением .php (по умолчанию). Или же через eval(). Видимо у вас ни то ни сё. Приведите проблемный участок кода - посмотрим.
|
|
25.02.2013, 10:32
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
var memryForm;
function copy(){
$("#copy").html("");
memryForm.clone().appendTo("#copy")
}
$(document).ready(function(){
memryForm=$("#form").clone();
$("#form *").on('change',function(){
memryForm=$("#form").clone();
});
});
</script>
<form id="form" style="border:3px ridge #B6CEFB;padding:8px;">
<input type=text><Br>
<input type=hidden value="1"><Br>
<input type="radio" name="browser" value="firefox"> Firefox<Br>
<input type="radio" name="browser" value="firefox"> Opera<Br>
<p><select name="hero[]">
<option disabled selected>Выберите героя</option>
<option value="Чебурашка">Чебурашка</option>
<option value="Крокодил Гена">Крокодил Гена</option>
</select></p>
</form>
<input type=button value="Получить Дубликат сохранённого" onclick="copy()" /><Br><Br>
===============================
<div id=copy></div>
|
|
|
|