При нажатии "submit" 2 раза данные добавляются 2 раза

Alexxx_2

Новичок
При нажатии "submit" 2 раза данные добавляются 2 раза

Столкнулся с такой проблемой, люди нажимают submit несколько раз (для уверенности наверное) и данные добавляются также несколько раз (хотя форма то одна).
Хотелось бы узнать универсальное и толковое решение этой задачи.
Самому пришли на ум 2 выхода, но ни один из них не нравится

1) Дизаблить кнопку сабмита JS, но так ведь можно заблокировать форму (передумаю я отправлять, нажму стоп, изменю данные в форме, а отправить то никак, кнопка неактивна..)

2) Проверять перед вставкой не добавлена ли такая же запись раньше. Но поскольку API уже давно разработан, то залезать в каждый метод ADD или делать обертки тоже занятие неблагодарное.

Посему прошу помощи у гуру.
 
1) Дизаблить кнопку сабмита JS, но так ведь можно заблокировать форму (передумаю я отправлять, нажму стоп, изменю данные в форме, а отправить то никак, кнопка неактивна..)
в onchange полей активируй кнопку

выход простой
генери ключ и сохраняй его в сессии
в поле форы hidden клади этот ключ
при посылке данных сравнивай и если все ок, добавляй данные и генери новый ключ

можно вариант посложнее с КАПЧЕЙ
 
передумаю я отправлять, нажму стоп
это ты пошутил так?

-~{}~ 13.09.07 13:55:

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

В общем, не болтай ерундой. disable тебе поможет, если ты действительно хочешь решить проблему, а не высасывать себе трудности из пальца.

плюс - проверка от намеренного флуда на сервере все равно не помешает
 
а не легче время между сабмитами проверить? если меньше секудны - флудераст!
 
Sokil.Dmytro
если использовать сессии, то имеются более удачные механизмы отследить повтор.
 
*****
я обычно просто редирект делаю - там хоть занажимайся
 
Zetruger
среднестатистическая форма субмитится так быстро что никакой стоп ты нажать не успеешь
 
среднестатистическая форма субмитится так быстро что никакой стоп ты нажать не успеешь
- совсем нет!
Форма добавления объявления о продаже авто с парой фото... (это так для примера) .
disable на javaScript именно кнопки ОТПРАВИТЬ не устраивает?
 
WoLFiks
и что у тебя часто пользователи жмут стоп а потом субмит?
 
@ndrey
Ням-ням.

Правильное решение озвучено уже давно. Хватит нести чепуху и вставлять свои 5 копеек.
 
Сверху