簡單易用的計數器(資料庫)_PHP教程

來源:互聯網
上載者:User
用法
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;
}
}

}
?>

http://www.bkjia.com/PHPjc/315451.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/315451.htmlTechArticle用法 ? include(counter.php); Counter(__FILE__);//為檔案增加一個計數 if($PHP_SELF==/index.php) { $count=Counter(INDEX_COUNT);//為首頁增加一個計數 } else { $count=...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.