Отключить кнопку отправки, как только пользователь отправляет форму

#javascript #php #mysql

#javascript #php #mysql

Вопрос:

Я использую PHP amp; MySQL для отправки формы со следующим кодом и использую isset функцию в PHP для отправки значения в базу данных.

 <div class="display">
    <form action="" method="POST">
        <div>
            <input type="text" name="name" placeholder="Your Name" required="required">
        </div>
        <div>
            <input type="text" name="phone" id="phone" placeholder="Mobile" required="required" onblur="check();">
            <br/>
            <span id="e_mobile"></span>
            <?php if(isset($_GET["r"])){ ?><p>Invalid number; must be ten digits. Please submit your query again</p><?php } ?>
        </div>
        <div>
            <input type="text" name="landline" id="landline" placeholder="Alternate Number" required="required" onblur="check1();">
            <br/>
            <span id="e_landline"></span>
        </div>
        <div>
            <input type="email" name="email" placeholder="Email" required="required">
        </div>
        <div>
            <input type="text" name="address" placeholder="Your Address" required="required">
        </div>
        <div>
            <input type="hidden" value="0" name="salesid"/>
        </div>
        <input type="submit" name="submit" value="Submit">
    </form> 
</div>
  

Теперь я хочу, чтобы после того, как пользователь нажмет кнопку отправки один раз, кнопка должна зависнуть; на данный момент, если пользователь нажимает кнопку отправки более одного раза (намеренно или по ошибке), одна и та же информация отправляется в базу данных более одного раза.

Что делать в этих обстоятельствах?

Комментарии:

1. используйте атрибут с именем disabled для этого сценария….

2. Это сделает то, о чем вы просите <input type="submit" name="submit" value="Submit" onclick="javascript: this.disabled = true;"/> но я не думаю, что это способ справиться с этой ситуацией (предотвращение повторной отправки формы).

Ответ №1:

Попробуйте с помощью jQuery:

Сначала добавьте идентификатор в свою форму

 <form action="" method="POST" id="form">
  

После этого добавьте скрипт:

 <script type="text/javascript">
$(document).ready(function() {
    $("#form").submit(function(e){
        $("input[type='submit']").attr("disabled","disabled");
    });
});

</script>
  

Ответ №2:

Вы можете добавить PHP Captcha, чтобы предотвратить повторный щелчок пользователя.

Пожалуйста, ознакомьтесь с приведенными ниже двумя URL-адресами, которые также включают демо-версию.

  1. http://www.w3schools.in/php/captcha/
  2. http://99webtools.com/blog/php-simple-captcha-script/