2014-03-13 34 views
0

我创建了一个名为“Generate”的按钮,当执行单击事件时,它应该在达到60秒后启动一个计时器,它应该执行一条if语句。我尝试了下面的代码,但它不工作。如何在php中延迟一段时间后执行一个函数?

if(isset($_POST['generate'])) 
     { 
     $timer = time(); 
     if($timer = $timer+5) 
     { 
     $query = mysql_query("UPDATE user_login SET password='' WHERE username = 'ajai sandy'") ; 
        $qry_run = mysql_query($query); 
     } 

在上面的代码中,我已经使用系统时间,我可以同时使用系统时间或定时器来完成此操作。

回答

1
if(isset($_POST['generate'])) 
     { 
     sleep(60); 
     // AND NOW action; 
     } 

而要用JS ...

+1

对不起,让我改写我的问题就像一个会话一旦点击按钮它应该等待60秒后它应该删除数据库中存在的varchar –

0

你不应该在服务器端做到这一点! 但是你可以用PHP的sleep()方法来做到这一点。

+0

使用jQuery将是: $( “按钮”)点击(函数(){ window.setTimeOut(函数(){// 你想 什么都},5000) }); – stetro

0

你想要吗?如果在60秒之后表现“如果”?然后,你需要使用睡眠()

if(isset($_POST['generate'])) 
    { 
    sleep(60); 
    if(condition) 
    { 
    // todo 
    } 
+0

我不想使用睡眠()函数,我应该设置一个会话或计时器后60秒周期结束它应该删除数据库中的密码varchar。我已经改写了我的问题,请参阅更多信息 –

+0

所以你将需要使用JavaScript,因为PHP不能这样工作。 60秒后,javasript可以启动PHP文件(类似CRON)。我建议使用jQuery。 – debute

+0

对不起,我没有关于jQuery的知识,你可以指出我的代码类似于我的查询? –

0

你只是需要首先检查当前时间,那么之后你需要使用睡眠

if(isset($_POST['generate'])) 
     { 
     $timer = time(); 
    sleep(5) 

     //your condition 

,或者你可以使用这个与客户端脚本lanugage为还有有一个函数的setTimeout

window.setTimeout(FUNCTION_NAME,60); 
相关问题