php用间隔做某事

时间:2013-04-09 00:45:59

标签: php continuous

我有一张表格,比如说:

<form name="form1" action="" method="post">
<input type="text" name="tfcari" />
<input type="submit" name="btcari" />
</form>

<?php
if (isset($_POST['btcari'])) {

echo $_POST['tfcari'];  

?>

如何做到这一点:

  

单击提交 - 回显文本 - 等待5秒 - 回显文本   (自动) - 等待5秒 - 回显文本(自动) - ...

谢谢大家。

1 个答案:

答案 0 :(得分:1)

PHP在发送到网站之前进行预处理,因此如果您要使用睡眠方法,它只会延迟显示该页面的页面。

最简单的方法是使用jQuery进行ajax调用,然后使用setTimeout每5秒回显一次文本:

// Assuming jQuery is linked
$(function() {
    // Connect to the php file
    $.ajax({
        url: 'php-file-with-tfcari-var.php',
        type: 'POST',
        success: function(data) {
            // data is what the ajax call returns, let's assume it's the $_POST variable from php
            var tfcari = data.tfcari;
            // Now you can loop every 5 seconds with a self calling setTimeout method
            var poll = (setTimeout(function() {
                window.document.write(tfcari);
            }, 5000)();
        }
    });
});