2016-10-24 14 views
0

PHP & MySQLを使用して、次のコードでフォームを送信し、isset関数を使用してデータベースに値を送信します。ユーザーがフォームを送信した後に送信ボタンを無効にする

<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> 

これで、ボタンがフリーズしたらユーザーが送信ボタンをクリックすると、ユーザーが送信ボタンを2回以上(意図的にまたは間違えて)クリックすると、同じ情報が複数回データベースに送信されます。

この場合、どうすればよいですか?

+0

use属性.... – Chetan

+0

これは、あなたが= 'の 'しかし、私はこれがこの状況(フォームの再提出を防ぐ)を処理する方法ではないと思います。 –

答えて

0

はjQueryを使って試してみてください。それは、スクリプトを追加した後

まずフォームに

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

をIDを追加します。

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

</script> 
関連する問題