javascript - php表单提交与JS按钮的问题

标签 javascript php jquery html forms

我有这个表格

 <form role="form" method='post' action='index.php' id='cme'>
    <input type="hidden" name="bonval" value="<?php echo $bonval ?>" />
    <fieldset>
        <h2 class="blink_me" style="color:green;font-size:40px;"><?php echo $bonval ?></h2>
        <div class="form-group">
            <center>
                <div class="g-recaptcha" data-sitekey="siteky"></div>
            </center>
        </div>
         <div class="row">
            <center>
                <input type="submit" name="claim" class="btn btn-lg btn-success btn-block" value="Claim Now" id="claim">
            </center>
        </div>
    </fieldset>
</form>

我有这个JavaScript来在点击后禁用按钮

<script>
$(function(){
    $('#claim').on('click',function(){
        $(this).val('Please wait ...')
        .attr('disabled','disabled');
        $('#cme').submit();
    });
});
</script>

这是我的表单验证

 if(isset($_POST['claim'])) {
$recaptcha = $_POST['g-recaptcha-response'];
if(!empty($recaptcha)) {
    # Use the recaptcha function here
    $resp   =   getGoogleRecaptcha();
    if($resp['success']) {
        # Capture value from the form submit
        $bonval =   $_POST['bonval'];
        # Insert normally
        $db->fetchVal("insert into log (`user_id`,`amount`) values (?,?)", array($id, $bonval));
    } 
  } else { ?>
  <div class="overlay"><div class="popup" style="background:red;">
    <h2>Error</h2>
    <a class="close" href="#">&times;</a>
    <div> <center><span class="blink_me">Seems error</span></center></div>
  </div></div>  
   <?php  }
  }
  1. 我的问题是按钮被禁用但表单未提交
  2. 如果用户刷新页面表单不断提交到数据库

最佳答案

编辑:抱歉,缺乏解释,我读得有点快:

使用 unset($_POST['...']) 插入 bdd 后可以完全删除 var $_POST;

if(isset($_POST['claim'])) {
    //code

    $db->fetchVal("insert into log (`user_id`,`amount`) values (?,?)", array($id, $bonval));

    unset($_POST['claim']);

    //code
}

关于javascript - php表单提交与JS按钮的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41572009/

相关文章:

javascript - Sencha ExtJS 中的引用和存储问题

javascript - IE8 : changing parent. 位置上的跨域 Iframes 问题会强制弹出新窗口。如果在点击事件上,它会按预期工作

javascript - 使用 AJAX XMLHttpRequest 填充 DataTable 的主体

javascript - 在多个操作中使用相同的 jQuery

javascript - 如何在 Google App Script 函数中使用多个参数并检查跨 HTMLService 选中的单选框?

php - 如何在 PHP 中将 Javascript 字符串编码为 Unicode 并解码为 utf-8?

php - 使用从 SQL 中获取的默认值优化下拉列表?

php - 使用 PHP54 和 Twilio 发送消息时出现 Http 500 错误

javascript - jQuery - 加载表单、提交 POST、无需刷新即可检索结果

javascript - 必须单击元素两次 Jquery 事件才能工作