文章探索:   分类:    关键字:  
  + 栏目导航
  + 相关文章
简单易用的计数器(数据库)
用Php实现链结人气统计
用PHP制作静态网站的模板框架(一)
用PHP制作静态网站的模板框架(二)
用PHP制作静态网站的模板框架(三)
PHP教程(四)
PHP教程(三)
PHP教程(二)
PHP教程(一)
PHP应用教程
什么是PHP
PHP编程常用技巧四则
PHP比ASP优秀的七个理由
用PHP制作动态计数器
PHP4.04在win98下的安装
用PHP编程开发“虚拟域名”系统
PHP入门速成


技术教程 -> PHP教程 ->  
简单易用的计数器(数据库)
来源:转载   人气:1535   录入时间:2007-11-8
    
   用法
   <?
   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;
    }
   }
   
   }
   ?>
   




Copyright(C)2007-2024 广州市佳沛数码科技有限公司 版权所有
公司地址: 广州市荔湾区东漖北路560号511室
电话:020-81803473 传真:020-81544987