• 技术文章 >php教程 >php手册

    一个简单的图形计数器,需要MYSQL,GD的支持,LINUX下PHP4RC1通过

    2016-06-21 09:13:04原创773

    mysql|计数器|图形

    /***
    hit_count表只一个字段hit_count
    page_visit_record表是用来控制一个IP一天内只产生一个计数器跳动
    CREATE TABLE page_visit_record (
    visit_time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
    remote_addr char(15) NOT NULL,
    visit_page char(60) NOT NULL,
    KEY visit_time (visit_time, visit_page),
    PRIMARY KEY (visit_time)
    );
    ***/
    include("config.inc.php3");
    $query="select count(*) as tong from page_visit_record where remote_addr='$REMOTE_ADDR' and date_format(visit_time,'%Y-%m-%d')=curdate()";
    $result=@mysql_query($query,$dbconnect);
    $has_count=@mysql_result($result,0,"tong");
    @mysql_query("lock tables hit_count write",$dbconnect);
    $query="select * from hit_count";
    $result=@mysql_query($query,$dbconnect);
    if(@mysql_num_rows($result)>0){
    $cur_count=@mysql_result($result,0,"hit_count");
    if($has_count==0){
    $cur_count++;
    $query="update hit_count set hit_count='$cur_count'";
    @mysql_query($query,$dbconnect);
    }
    @mysql_query("unlock tables",$dbconnect);
    }
    else{
    $cur_count=1;
    $query="insert into hit_count (hit_count) values ('$cur_count')";
    @mysql_query($query,$dbconnect);
    @mysql_query("unlock tables",$dbconnect);
    }
    while(strlen($cur_count)<8)
    $cur_count="0$cur_count";

    $visit_time=date("Y-m-d H:i:s");
    $query="insert into page_visit_record (visit_time,remote_addr,visit_page) values ('$visit_time','$REMOTE_ADDR','$page')";
    @mysql_query($query,$dbconnect);

    Header("Content-type: image/gif");
    $im = imagecreate(56,16);
    $black = ImageColorAllocate($im, 0,0,0);
    $blue = ImageColorAllocate($im, 0,0,255);
    $white = ImageColorAllocate($im, 255,255,255);
    $yellow = ImageColorAllocate($im, 255,255,0);
    imagerectangle($im, 0, 0, 54, 14, $blue);
    //imagestring($im, 2, 4, 1, $cur_count, $yellow);
    imagestring($im, 2, 4, 1, $cur_count, $yellow);
    ImageGif($im);
    ImageDestroy($im);

    ?>



    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nbsp quot count query visit
    上一篇:使用PHPLIB进行Session的管理和认证(转载) 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php:统计邮件的大小方法• 如何配置Eclipse php xdebug(附代码)• PHP中Unicode的签名问题• 探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释• php 中文处理函数集合
    1/1

    PHP中文网