Модераторы: Illuminaty
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Повторный ввод данных, предотвращение повторного ввода submit 
:(
    Опции темы
PHPLamer
Дата 29.3.2010, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 2.11.2006

Репутация: нет
Всего: нет



Как сделать что бы после отправки данных из form в HTML странице нельзя было вернуться к уже введенным данным и отправить их повторно ?

Что-то слышал про редирект но в Mozilla не помогает.

Подробнее:
Как правильно организовать ввод данных
Существуют два файла:
prg.php - принимает переменные через POST и заносит их базу данных
index.html - в котором форма для ввода и кнопка submit
форма с HTML страницы передает в PHP данные через метод POST
Замечен недостаток сайта:
после ввода и отправки данных, находясь на странице prg.php, пользователь нажимает на browsere кнопку back и попадает на HTML страницу с формой и уже введенными в поля данными нажимает кнопку submit и захламляет базу однотипными данными.

PM   Вверх
нуп
Дата 29.3.2010, 01:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ботокодер
**


Профиль
Группа: Участник
Сообщений: 987
Регистрация: 22.6.2009
Где: Кременчуг

Репутация: 1
Всего: 33



Сделать для юзера ограничение на посылку данных. например раз в минуту. Или js очищать данные при загрузке страницы
PM MAIL   Вверх
bars80080
Дата 29.3.2010, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(PHPLamer @  29.3.2010,  00:03 Найти цитируемый пост)
Что-то слышал про редирект но в Mozilla не помогает.

ну, смотря как вы делаете редирект. стандартный от пхп работает во всех бразуерах, просто потому что он соблюдает правила протокола http.

скрипт, приняв и занеся в данные в базу, должен выдать следующий заголвок:
Код

header('Location: http://нужный урл');


теперь, если нажать кнопку F5, то новой отправки данных не произойдёт. что же касается, чтобы форму нельзя было отправить второй раз.
если пользователь жмёт кнопку назад, то возврат к заполненной форме вполне понятен (может он посмотреть что-то хочет). а вот то что он жмёт кнопку снова - это злодейство. разрешите ему вставлять данные только один раз. к примеру, внесите в форму поле 
Код

<input type="hidden" name="key" value="u09293ur92puru ... некоторый хэш" />
. желательно, чтобы этот ключ генерировался уникальным (к примеру, timestamp + random). и вносите в базу. при повторной отправке данных проверяйте, а не вставлен ли уже пост с таким же ключом
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.0678 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.