PC6下载站

分类分类

简单易用的计数器(数据库)

关注+2004-11-07作者:蓝点

用法


include("counter.php");

Counter(__FILE__);//为文件增加一个计数

if($PHP_SELF=="/index.php")

{

$count=Counter("INDEX_COUNT");//为首页增加一个计数

}

else

{

$count=Counter("INDEX_COUNT","",0);//取得首页计数

}

echo "你是第$count个访问者";

?>

--------counter.php-----------


if(!isset($PHP_INCLUDE_COUNTER_PHP))

{$PHP_INCLUDE_COUNTER_PHP=__FILE;



$counter_error_state=0;

$counter_error_msg="";

function Counter($file,$query="",$add=1)

{

        $db_name="database";

        $db_user="username";

        $db_pass="password";

        $db_table="counter";



        if(empty($file))

        {

                $counter_error_state=-100;

                $counter_error_msg="缺少第一个参数或参数为空";

                return -100;

        }

        global $PHP_SELF,$QUERY_STRING,$counter_error_state,$counter_error_msg;

        if(empty($db_user)||!$db_user||$db_user=="")$res=@mysql_connect("localhost");

        else $res=@mysql_connect("localhost",$db_user,$db_pass);

        if(!$res)

        {

                $counter_error_states=-10;

                $counter_error_msg="不能连接数据库";

                return -10;

        }

        if(!@mysql_select_db($db_name))

        {

                $counter_error_states=-11;

                $counter_error_msg="不能选择数据库";

                return -11;

        }

        else

        {

                if(!$db_res=@mysql_query("SELECT * FROM ".$db_table))

                {

                        if(!$db_res=@mysql_query("CREATE TABLE ".$db_table." (id INTEGER AUTO_INCREMENT,PRIMARY KEY (id),file VARCHAR(255),query VARCHAR(255),time VARCHAR(255),count INT)"))

                        {

                                $counter_error_states=-20;

                                $counter_error_msg="不能创建数据表";

                                return -20;

                        }

                        @mysql_free_result($db_res);

                }

                $str="SELECT * FROM ".$db_table." WHERE file=\"".$file."\" AND query=\"".$query."\"";



                if(!$db_res=@mysql_query($str))

                {

                        $counter_error_states=-30;

                        $counter_error_msg="不能查询记录";

                        return -30;

                }

                $num=@mysql_num_rows($db_res);

                if($num>1)

                {

                        $counter_error_states=-40;

                        $counter_error_msg="发生没有预期的错误=数据行数错误";

                        return -40;

                }

                $count=0;

                $str="INSERT ";

                $strWhere="";

                if($num==1)

                {

                        $row=@mysql_fetch_array($db_res);

                        @mysql_free_result($db_res);

                        $count=$row["count"];

                        $id=$row["id"];

                        $str="UPDATE ";

                        $strWhere=" WHERE id=$id";

                }

                if($add<1)return $count;

                $count+=$add;

                $str.=$db_table." SET file=\"".$file."\",query=\"".$query."\",time=\"".date("Y;n;d;G;i;s")."\",count=".$count.$strWhere;

                $db_res=@mysql_query($str);

                if(!$db_res)

                {

                        $counter_error_states=-50;

                        $counter_error_msg="不能添加或更新记录";

                        return -50;

                }

                return $count;

        }

}



}

?> 
展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消