当前位置: 首页 > 图文教程 > 网络编程 > PHP > 改进的IP计数器

PHP
同台服务器使用缓存APC效率高于Memcached的演示代码
GBK的页面输出JSON格式的php函数
在字符串指定位置插入一段字符串的php代码
php 数组二分法查找函数代码
php htmlspecialchars加强版
支持数组的ADDSLASHES的php函数
判断是否为指定长度内字符串的php函数
php 读取文件乱码问题
PHP+ajax 无刷新删除数据
php microtime获取浮点的时间戳
php 魔术函数使用说明
php 高效率写法 推荐
PHP 学习路线与时间表
php中理解print EOT分界符和echo EOT的用法区别小结
Search File Contents PHP 搜索目录文本内容的代码
收藏的PHP常用函数 推荐收藏保存
PHP 伪静态隐藏传递参数名的四种方法
PHP实现域名whois查询的代码(数据源万网、新网)
php 用checkbox一次性删除多条记录的方法
php str_pad() 将字符串填充成指定长度的字符串

PHP 中的 改进的IP计数器


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

<?
//require ('common.inc');
$arr_request=array();
if (count($HTTP_GET_VARS))
{
while (list($key,$value)=each($HTTP_GET_VARS))
{
$arr_request[strtolower($key)]=$value;
}
}
if (count($HTTP_POST_VARS))
{
WHILE (list($key,$value)=each($HTTP_POST_VARS))
{
$arr_request[strtolower($key)]=$value;
}
}
$link=@mysql_connect("localhost","kong","kong");
mysql_select_db("mywebdb");
$ip=$REMOTE_ADDR;
$current=getdate(time());
$day=$current["mday"];
$query="select * from addcount where day=\"$day\"";
$result=@mysql_query($query);
if(!$num=@mysql_num_rows($result))
$num=1;
while($row=@mysql_fetch_row($result))
{
if (strcmp($ip,$row[1])==0)
{
$i=1;
$id=$row[0];
$click=$row[3]+1;
$up="update addcount set click_count=click_count+1 where id=$id";
$result2=@mysql_query($up);
// break;
}
$total+=$row[3];
}
$total++;
if(!$i){
$query1="insert into addcount (ip,day,click_count )values ('$ip','$day',1)";
mysql_db_query("mywebdb",$query1,$link);
$click=1;
}
echo "<html><head><title>计数器</title></head>";
echo "你是第" .$num."访问者<BR>";
echo "今天你第".$click."次点击<BR>";
echo "今天总点击".$total."次<BR>";
/*
表:
addcount
CREATE TABLE addcount (
id int(6) DEFAULT '0' NOT NULL auto_increment,
ip char(20) NOT NULL,
day int(2) NOT NULL,
click_count int(3) NOT NULL,
PRIMARY KEY (id)
);
*/
?>