当前位置: 首页 > 图文教程 > 网络编程 > PHP > php计数器的设计与实现

PHP
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
用mysql内存表来代替php session的类
简化php模板页面中分页代码的解析
一周让你学会PHP 不错的学习资料
PHP 数据库树的遍历方法
php实现从ftp服务器上下载文件树到本地电脑的程序
PHP 操作文件的一些FAQ总结
PHP 截取字符串 分别适合GB2312和UTF8编码情况
PHP 编程的 5个良好习惯
php下几个常用的去空、分组、调试数组函数
PHP Ajax中文乱码问题解决方法
php 采集书并合成txt格式的实现代码
php Try Catch异常测试
解决了Ajax、MySQL 和 Zend Framework 的乱码问题
Zend 输出产生XML解析错误
php动态生成JavaScript代码
隐性调用php程序的方法
在JavaScript中调用php程序
php 数组的创建、调用和更新实现代码
php生成SessionID和图片校验码的思路和实现代码

PHP 中的 php计数器的设计与实现


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 245 ::
收藏到网摘: n/a

本程序有4个计数器。
index.php是一个普通的计数器可以看出总次数和哪个人来这个站点的次数,点几次加几次,不防水。
index1.php也是一个防水的计数器可以看出次数和哪个人来这个站点的次数,点几次加几次,防水,5秒加一次。
index2.php是一个防水的计数器可以看出总次数和哪个人来这个站点的次数,点几次加几次,防水,2秒加一次。
indexa.php是一个普通和防水和图形的计数器3合一的。可以看出总次数和哪个人来这个站点的次数,防水,有图形。

关键语句:
防水的:$sql = "SELECT COUNT(*) FROM `counter_1` WHERE user='$user' AND TIME_TO_SEC(NOW()-`time`) < 5 AND ip='$REMOTE_ADDR'";
图形计数器: for ( $i=0; $i< strlen($row[0]);$i++)
{
$digit= substr($row[0],$i,1);
$pic.="<img src=\"timex/$digit.gif\" width=\"15\" height=\"20\">";
}

<?
//------[ 基本设定 ]-------
$mysql_server_name = "localhost";
$mysql_username = "root";
$mysql_password = "512783";
$mysql_database = "jishuqi";
//-------
//准备好你的sql
$sql = "INSERT INTO `counter_1` ( `user` , `ip` , `time` ) VALUES ('$user', '$ip', NOW( ) );";
$conn=mysql_connect( $mysql_server_name, $mysql_username, $mysql_password);
mysql_select_db($mysql_database,$conn);
$result = mysql_query($sql);
//$id = mysql_insert_id();
mysql_close($conn);

//建立连接------通过(伺服器地址,使用者名称,使用者密码)
$conn=mysql_connect( $mysql_server_name, $mysql_username, $mysql_password );

//准备好你的SQL语法
$sql = "SELECT COUNT(*) FROM `counter_1`";
//进行查询(或者叫做执行,选取)
$result=mysql_db_query( $mysql_database, $sql,$conn );
//将查询后的结果-->抓出一笔
$row1=mysql_fetch_row($result);

//印出该笔资料的所有栏位的阵列
//print_r($row1);
//清除查询结果
mysql_free_result($result);

//建立连接------通过(伺服器地址,使用者名称,使用者密码)
$conn=mysql_connect( $mysql_server_name, $mysql_username, $mysql_password );

//准备好你的SQL语法
$sql = "SELECT COUNT(*) FROM `counter_1` WHERE user='$user'";
//进行查询(或者叫做执行,选取)
$result=mysql_db_query( $mysql_database, $sql,$conn );
//将查询后的结果-->抓出一笔
$row2=mysql_fetch_row($result);

//印出该笔资料的所有栏位的阵列
//print_r($row2);
//清除查询结果
mysql_free_result($result);
?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>3种计数器</title>
<style type="text/css">
<!--
.style1 {
font-size: 24px;
color: #00FF99;
}
.style2 {color: #FF00FF}
.style3 {color: #CC0033}
.style4 {color: #0000FF}
.style5 {color: #FF0000}
.style6 {
font-size: 36px;
color: #996633;
}
-->
</style>
</head>

<body>
<div align="center" class="style1 style6">枫树林下
</div>
<div align="center">
<p class="style1"> </p>
<p class="style1"> </p>
<p class="style1"><span class="style3">总共有</span><?=$row1[0]; ?><span class="style5">人</span><span class="style4">来过</span><span class="style2">这个网站
</span></p>
<p class="style1"><span class="style3">总共有</span><?=$row2[0]; ?><span class="style5">人</span><span class="style4">来过</span><span class="style2"><?=$user?>网站
</span>
</p>
</div>
</body>
</html>

<?

//------[基本设定]-------
$mysql_server_name = "localhost";
$mysql_username = "root";
$mysql_password = "512783";
$mysql_database = "jishuqi";
//-------

//建立连接------通过(伺服器地址,使用者名称,使用者密码)
$conn=mysql_connect( $mysql_server_name, $mysql_username, $mysql_password );

//准备好你的SQL语法
$sql = "SELECT COUNT(*) FROM `counter_1`WHERE user= '$user' AND TIME_TO_SEC(NOW()-`time`) < 3 AND ip='$REMOTE_ADDR'";
//进行查询(或者叫做执行,选取)
$result=mysql_db_query( $mysql_database, $sql,$conn );
//将查询后的结果-->抓出一笔
$row=mysql_fetch_row($result);

//印出该笔资料的所有栏位[阵列]
//print_r($row);
//清除查询结果
mysql_free_result($result);
if($row[0]==0)
{
//--基本设定
//准备好你的sql
$sql = "INSERT INTO `counter_1` ( `user` , `ip` , `time` ) VALUES ('$user', '$REMOTE_ADDR', NOW( ) );";
$conn=mysql_connect( $mysql_server_name, $mysql_username, $mysql_password);
mysql_select_db($mysql_database,$conn);
$result = mysql_query($sql);
$id = mysql_insert_id();
mysql_close($conn);
}

//建立连接------通过(伺服器地址,使用者名称,使用者密码)
$conn=mysql_connect( $mysql_server_name, $mysql_username, $mysql_password );

//准备好你的SQL语法
$sql = "SELECT COUNT(*) FROM `counter_1` WHERE user='$user'";
//进行查询(或者叫做执行,选取)
$result=mysql_db_query( $mysql_database, $sql,$conn );
//将查询后的结果-->抓出一笔
$row=mysql_fetch_row($result);

//印出该笔资料的所有栏位的阵列
//print_r($row);
//清除查询结果
mysql_free_result($result);
for ( $i=0; $i< strlen($row[0]);$i++)
{
$digit= substr($row[0],$i,1);
$pic.="<img src=\"timex/$digit.gif\" width=\"15\" height=\"20\">";
}
?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>3种计数器</title>
<style type="text/css">
<!--
.style1 {
font-size: 24px;
color: #00FF99;
}
.style2 {color: #FF00FF}
.style3 {color: #CC0033}
.style4 {color: #0000FF}
.style5 {color: #FF0000}
.style6 {
font-size: 36px;
color: #996633;
}
-->
</style>
</head>

<body>
<div align="center" class="style1 style6">枫树林下
</div>
<div align="center">
<p class="style1"> </p>
<p class="style1"> </p>
<p class="style1"><span class="style3">总共有</span><?=$row[0]; ?><span class="style5">人</span><span class="style4">来过</span><span class="style2">这个网站
</span></p>
<p class="style1"><span class="style3">总共有</span><?=$row[0]; ?><span class="style5">人</span><span class="style4">来过</span><span class="style2"><?=$user?>网站</span></p>
<p class="style1"><?=$pic?></p>
</div>
</body>
</html>