За последние 24 часа нас посетили 22156 программистов и 1125 роботов. Сейчас ищут 822 программиста ...

Как отправить форму только один раз после многократного нажатия на кнопку Отправить?

Тема в разделе "Yii", создана пользователем mixnet, 11 янв 2021.

  1. mixnet

    mixnet Новичок

    С нами с:
    11 авг 2018
    Сообщения:
    146
    Симпатии:
    7
    форма кнопки имеет вид

    PHP:
    1. <?php echo Html::submitButton([
    2.                 'name' => 'login-button',
    3.             ]) ?>
     
  2. Дюран

    Дюран Активный пользователь

    С нами с:
    9 мар 2018
    Сообщения:
    257
    Симпатии:
    19
    Любой успешный сабмит должен завершаться редиректом
     
  3. mixnet

    mixnet Новичок

    С нами с:
    11 авг 2018
    Сообщения:
    146
    Симпатии:
    7
    согласен), но когда после нажатии самбита, начинается отправка данных, страница начинает перезагружаться (медленно), можно клацнуть ещё раз десять по кнопке)
     
  4. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.555
    Симпатии:
    1.754
    @mixnet Жабасриптом делайте её недоступной
    --- Добавлено ---
    Или отобразите индикатор загрузки поверх формы.
     
    mixnet нравится это.
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.076
    Симпатии:
    1.237
    Адрес:
    там-сям
    На фронте можно кнопочку задизаблить и добавить в неё какой-то визуальный признак, например троеточие или гифку loader
    На беке, само собой, редирект (если это не аякс) и возможно контролировать флуд-интервал, т.е. проверять время с последнего такого же события. Возвращать 403 если интервал не прошёл.