如何在一天中单击一次后禁用提交按钮,并在第二天使用php重新启用此按钮?

如何在一天中单击一次后禁用提交按钮,并在第二天使用php重新启用此按钮?,php,submit,Php,Submit,我想在一天中单击一次后禁用用户的提交按钮,并在第二天重新启用此按钮 <input type="submit" class="myButton" id="option" value="submit"/> 我需要的是,当我点击提交按钮时,表单提交并禁用当天的按钮。然后,它只在第二天对该用户重新启动。好吧,您应该以某种方式存储按钮是否被单击,如果是,则存储在什么日期/时间。或者只保留日期和时间,如果它是空的(只是第一次),它还没有被按下,或者只检查它是否是一天前或一天前

我想在一天中单击一次后禁用用户的提交按钮,并在第二天重新启用此按钮

   <input type="submit" class="myButton" id="option" value="submit"/>


我需要的是,当我点击提交按钮时,表单提交并禁用当天的按钮。然后,它只在第二天对该用户重新启动。

好吧,您应该以某种方式存储按钮是否被单击,如果是,则存储在什么日期/时间。或者只保留日期和时间,如果它是空的(只是第一次),它还没有被按下,或者只检查它是否是一天前或一天前

   <input type="submit" class="myButton" id="option" value="submit"/>
可以将此值存储在数据库的文本文件中

加载页面时,执行以下伪代码:

<?
if ($dateLastPressed < $aDayAgo)
{
   echo '<input type="submit" class="myButton" id="option" value="submit" disabled = "disabled"/>';
}
else
{
   echo '<input type="submit" class="myButton" id="option" value="submit"/>';
}

我想最简单的方法是将点击的时间和日期存储在数据库中。我将假设您的用户具有某种独特的身份,该身份应与单击的时间和日期一起存储

为该用户呈现此特定表单时,请检查数据库记录,将日期和时间与当前日期和时间进行比较,然后根据比较结果显示按钮

<?php if ($dbRecord < $timeLimit) : ?>
   <input type="submit" class="myButton" id="option" value="submit" disabled = "disabled"/>
<?php else : ?>
   <input type="submit" class="myButton" id="option" value="submit"/>
<?php endif; ?>

您还需要在PHP脚本中进行某种验证,以确保用户在第一次提交表单后不只是通过按enter键来滥发您的页面。


<form name="from" id="myForm"></form>

$('#myForm').bind('submit', function(){

$.ajax({
    type:'POST',
    cache:false,
    url:'/phpFiles/Form.php', //your path file
    data:$('#myForm').serializeArray(),
        success:function(data){
            var msg = $('.dearUserMsg');
            msg.slideDown(100, function(){
                msg.html(data);});// esse e a resposta do segundo form

        }
});
return false;
});


$('#myForm').bind('submit', function(){ // essa e a submit perfeito
$.ajax({
    type:'POST',
    cache:false,
    url:'secondForm.php',
    data:$('#myForm').serializeArray(),
        success:function(data){
            $.fancybox({
                content: data,
                width: '90%',
                height: '50%',
                scrolling: 'no',
                overlayColor: '#060',
                overlayOpacity: .3,
                transitionIn: 'elastic',
                transitionOut: 'elastic',
                easingIn: 'easeInSine',
                easingOut: 'easeOutSine',
                titlePosition: 'outside',
                hideOnOverlayClick: false,
                hideOnContentClick: false
            }); //('#mainTag')
        }
});return false;
});

<input type="submit" value="Submit" id="sButton" />
<div class="dearUserMsg" style="display:none"></div> 
$('#myForm').bind('submit',function(){ $.ajax({ 类型:'POST', cache:false, url:'/phpFiles/Form.php',//您的路径文件 数据:$('#myForm').serializeArray(), 成功:功能(数据){ var msg=$('.dearUserMsg'); msg.slideDown(100,函数(){ msg.html(data);});//存在一个resposta do segundo表单 } }); 返回false; }); $('#myForm').bind('submit',function(){//essa e a submit perfeito $.ajax({ 类型:'POST', cache:false, url:'secondForm.php', 数据:$('#myForm').serializeArray(), 成功:功能(数据){ $.fancybox({ 内容:数据,, 宽度:“90%”, 身高:50%, 滚动:“否”, 套色:'#060', 超产能:.3, 过渡语:“弹性”, 转换输出:“弹性”, easingIn:“easeInSine”, easingOut:“easeOutSine”, 标题位置:“外部”, HideonOverlyclick:错, hideOnContentClick:false });/(“#mainTag”) } });返回false; });
不要忘记显示“无”以向下滑动工作

这是同样的事情,但反应会进入一个fancybox


在这两个示例中,“提交”按钮只工作一次,按钮将正常运行

这是一个非常广泛的问题。当你说用户时,你指的是注册用户,还是访问你网站的任何人?如果用户没有在Cookie之外注册以确认身份,您可以使用请求IP,但这两种IP都不是真正可靠的。此外,在处理提交的数据时,请再次检查,重新启用禁用的按钮或仅生成请求是很难的。我的回答在这方面不完整,RuuSunSee确实有很多安全问题要考虑,这取决于你的目的是什么。