0

我目前有一个看起来像这样的脚本:

<?php
$pattern = '/(?<=\=\s)([0-9]+)(?=\s\=)/';
$total = 0;
$matches;

$handle = @fopen("log.txt", "r");

if ($handle) {
    while (($buffer = fgets($handle, 4096)) !== false) {        
        if(preg_match($pattern, $buffer, $matches))
        {
            $total += intval($matches[0]);
        }       
    }
    if (!feof($handle)) {
        echo "Error: unexpected fgets() fail\n";
    }
    fclose($handle);
}
echo $total;
?>

问题是变量 $total 会经常更新一个全新的数字。我希望页面上的数字自动更新,而无需用户刷新。我认为我可能需要使用 AJAX,但我的 AJAX 很弱。有谁能够帮助我?谢谢!

4

2 回答 2

1

您将不得不使用 AJAX 或仅使用元刷新或 javascript 刷新。当然,这些刷新会重新加载页面,但可以在没有用户交互的情况下这样做。

于 2012-12-26T19:42:41.047 回答
1

又快又脏:

<html lang="en">
    <head>
        <script type="text/javascript" src="http://www.google.com/jsapi"></script>
        <script type="text/javascript">
            google.load('jquery', '1.4.2'); 
            google.load('jqueryui', '1.8.8');
        </script>
        <script type="text/javascript">
            $(document).ready(function() {
                setInterval('get_counter()', 500);
            });
            function get_counter()
            {
                $('.counter').load('PATH_TO_YOUR_PHP_SCRIPT');
            }
        </script>
    </head>
    <body>
        <h1>Counter</h1>
        <div class="counter"></div>
    </body>
</html>
于 2012-12-26T21:03:37.850 回答