Typecho 网站总访客数统计加在线人数代码

总访客代码

代码

首先在Typecho后台外观选择编辑当前外观 functions.php中,添加以下统计代码。

代码语言:javascript

复制

//总访问量
    function theAllViews()
        {
            $db = Typecho_Db::get();
            $row = $db->fetchAll('SELECT SUM(VIEWS) FROM `typecho_contents`');
                echo number_format($row[0]['SUM(VIEWS)']);
        }

插入代码

添加后点击保存即可;

然后在你需要显示的位置(如:footer.php sidebar.php 等)插入以下调用代码。

代码语言:javascript

复制

访客总人数:<?php echo theAllViews();?>

然后就好了

在线人数代码

代码

代码语言:javascript

复制

<?php    //首先你要有读写文件的权限,首次访问肯不显示,正常情况刷新即可
    $online_log = "slzxrs.dat"; //保存人数的文件到根目录,
    $timeout = 30;//30秒内没动作者,认为掉线
    $entries&nbsp;=&nbsp;file($online_log);
    $temp = array();
    for ($i=0;$i<count($entries);$i++){
        $entry&nbsp;=&nbsp;explode(&quot;,&quot;,trim($entries[$i]));
        if(($entry[0]&nbsp;!=&nbsp;getenv(&#39;REMOTE_ADDR&#39;))&nbsp;&amp;&amp;&nbsp;($entry[1] > time())) {
            array_push($temp,$entry[0].",".$entry[1].&quot;\n&quot;);&nbsp;//取出其他浏览者的信息,并去掉超时者,保存进$temp
        }
    }
    array_push($temp,getenv(&#39;REMOTE_ADDR&#39;).&quot;,&quot;.(time()&nbsp;+&nbsp;($timeout))."\n"); //更新浏览者的时间
    $slzxrs&nbsp;=&nbsp;count($temp); //计算在线人数
    $entries&nbsp;=&nbsp;implode(&quot;&quot;,$temp);
    //写入文件
    $fp&nbsp;=&nbsp;fopen($online_log,"w");
    flock($fp,LOCK_EX); //flock() 不能在NFS以及其他的一些网络文件系统中正常工作
    fputs($fp,$entries);
    flock($fp,LOCK_UN);
    fclose($fp);
    $tj=&nbsp;&quot;在线人数:&quot;.$slzxrs."人";?>

将以上代码放到要显示文件的最顶部,之后再要显示此统计的地方加上此输出。
然后在文件栏建一个slzxrs.dat的文件用来记录。

插入代码

代码语言:javascript

复制

<?php echo $tj?>

<br/>


标签: Typecho, 访客数统计

添加新评论 »