Как сделать чтобы данные не пропадали???

Bboy

Новичок
Как сделать чтобы данные не пропадали???

Есть форма для заполнения (ну там всякие фио, тел, имэйл...) , когда юзер все заполнил, нажимает "отправить". Далее осуществялется переход на следующюю страницу. Там, в зависимости от рез-ов пишет, либо все ок, либо вернитесь и заполните те поля, к-ые пропустили или заполнили не верно. Но когда пользователь возвращается назад, все данные из формы, к-ые он заполнил, пропадают и ему приходится заполнять все по новой. Как сделать чтоб то, что он ввел, сохранялось???
 

tony2001

TeaM PHPClub
писать не "вернитесь", а выводить ту же форму с отмеченными полями, которые содержат ошибочные данные.
 

IBSN

Новичок
в форме <input type=text name=name value="<?=$name?>">
и в этой же стр проверяй типа так:
if ($name)
{
echo "иди";
}
else
{
echo "ты не заполнил...";
}

=) вот пример
 

Bboy

Новичок
Автор оригинала: tony2001
писать не "вернитесь", а выводить ту же форму с отмеченными полями, которые содержат ошибочные данные.
Выводить самому, редирект чтоли делать???
 

Nick

Guest
А у меня работает нормально такая байда:

<a href="javascript:history.back()">Ввернитесь</a>

Человек жмёт на ссылку - появляется форма со всем тем, что он в неё до этого напихал
 

RomikChef

Guest
Nick, твоя "байда" не покажет, в каких полях были какие ошибки.
И она зависит от настроек браузера.
 

Bboy

Новичок
Автор оригинала: RomikChef
Nick, твоя "байда" не покажет, в каких полях были какие ошибки.
И она зависит от настроек браузера.
Ну, проверку ошибок допустим я сделаю..., а вот про настройки браузера можно поподробнее, что ты имеешь в виду???
 

Verk

Guest
Никогда не стоит полагаться на яваскрипт. У некоторых он может работать некорректно или не работать совсем.
 

RomikChef

Guest
Ну, проверку ошибок допустим я сделаю
Ну, расскажи мне, сообразительный мой, как ты сделаешь такую проверку: имя, которое человек вводит при регистрации, уже занято.
а вот про настройки браузера можно поподробнее
я имею в виду принудительное отсутствие кэша, например. Есть такие любители. Не кэширует у них браузер ничего. И каждый раз все запрашивает заново. и запросит твою форму. и получит. Незаполненную.
 

StUV

Rotaredom
2RomikChef:
нормально ли сохранять введенные в форму данные в сессии для восстановления при возврате в случае некорректного ввода ?
 

StUV

Rotaredom
а как решить эту проблему, если заполнене формы и обработка ввода в разных скриптах - или этого "просто не должно быть" ?
 

RomikChef

Guest
Не вижу смысла делать обработку и вывод в разных скриптах.
 

Bboy

Новичок
Автор оригинала: RomikChef
Ну, расскажи мне, сообразительный мой, как ты сделаешь такую проверку: имя, которое человек вводит при регистрации, уже занято.
Вообще-то уже сделал.
<form action='totalorder.php' method=post>;
...
<tr><td><input type='text' name='adress' size='20' maxlength='35'></td></tr>
...
А в следующем окне, где говорит, либо все ок либо заполни корректно, делаю проверку:
...
if (!$adress) echo "Вы не заполнили поле \"Адрес доставки:\"<br>";
...


я имею в виду принудительное отсутствие кэша, например. Есть такие любители. Не кэширует у них браузер ничего. И каждый раз все запрашивает заново. и запросит твою форму. и получит. Незаполненную.
Ну если они такие умные, то это уже их проблемы...


На самом деле, мне кажется что то, что ты предложил будет немного правильнее, и надежнее( http://phpclub.net/talk/showthread.php?s=&threadid=30705). Я так понял, что там смысл сводится к тому, что проверка заполнения происходит в этом же окне, никуда не переходя. Но разобраться в нем не могу:((( - в начале не понятно и в html'ой части тоже много вопросов...
 

RomikChef

Guest
Бойчик.
маленький мой.
я тебя не уговариваю.
ты спросил - я ответил.
как правильно и как удобно пользователю и программисту.
Можешь хоть на спине у себя ошибки выводить.
Доказывать я тебе ничего не собираюсь, родной.
 

RomikChef

Guest
Что там можно не понять?

в начале скрипта проверяем- посланы ли данные
если посланы, то проверяем их.
если все успешно, то записываем и ЗАВЕРШАЕМ СКРИПТ
командой exit и форму он не выведет.
если были ошибки, то скрипт не завершится, и, значит, выведет форму с заполненными полями.

если ПОСТА не было, то скоипт выведет пустую форму.
 
Сверху