@UncleMisha

Избежать дублей при отправки формы?

Доброго времени суток. Имеется такая вот проблема допустим есть форма:
<form action="send-contact.php" method="POST">
<input type="text" name="name" class="form-control" aria-label="Default" aria-describedby="inputGroup-sizing-default" placeholder="Ваше имя">
<input type="text" name="phone" class="form-control mask-phone" aria-label="Default" aria-describedby="inputGroup-sizing-default" placeholder="Контактный телефон" required>
<button type="submit" class="btn btn-outline-success">Получить</button>
</form>

После нажатия на кнопку отправить идет переход на страницу обработки "send-contact.php" и эта же страница работает как страница спасибо.
send-contact.php:
<?php

require __DIR__ . '/vendor/autoload.php';

if(isset($_POST['phone'])) {

try {

// Создание клиента
$subdomain = 'ххх';            // Поддомен в амо срм
$login     = 'ххх';            // Логин в амо срм
$apikey    = 'ххх';      ...................................................................... ?>
<!DOCTYPE html>
<html lang=ru>
<head>
<meta charset=UTF-8>
<title>Спасибо Ваша заявка отправлена</title>
</head>
<body>
<p>Пока наш менеджер связывается с Вами, Вы можете просмотреть <a href=index.php>другие наши проекты</a> или скачать <a href=file/rams.pdf target=_blank download=file/rams.pdf>презентацию</a>.</p>
...............................................................................................
</body>
</html>

Данные уходят в AMOcrm но пока идет перенаправления на страницу спасибо на кнопку отправить можно нажимать до бесконечности что и создает дубли "Особенно если у человека плохой интернет". Вопрос: что и где дописать что бы при нажатии на кнопку отправить на ней допустим менялась надпись с "Отправить" на "подождите"? Заранее благодарю.
  • Вопрос задан
  • 272 просмотра
Решения вопроса 1
isergirud
@isergirud
В send-contact.php ничего менять не надо. Эта страница ни при чем. Вам проще добавить блокировку той самой кнопки отправки после её нажатия.

В ваш первый код я добавил ID к форме и ID к кнопке сабмита. И добавил немного яваскрипта. Должно сработать.

https://pastein.ru/t/4X
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
anatoly_kulikov
@anatoly_kulikov
Помог ответ? Отметь решением!
На js напишите функцию, которая будет кнопку при нажатии удалять
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы