资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

制作数据库版计数器php 计数器的实现

菜鸟求救!!PHP怎么实现计数器呀?!!

写个计数函数封装,用数据库或者文件来进行记录都可,在网页中调用那个函数即可!你说的表可能是表单,用html语言就可以写!至于语言工具就很多了,数据库也很多,你不懂的也很多,准确的说是太多了,不要着急,脚踏实地,慢慢学吧!

成都创新互联长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为阳城企业提供专业的成都网站设计、网站制作,阳城网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。

如何做一个网站访问计数器,用php程序

创建一个数据库表

表名:table_counter

字段:number int(10)

1.显示统计数据

$sql = "SELECT * FROM table_counter";

2.每次刷新页面 执行sql

$sql = "UPDATE table_counter SET number= number+ 1";

如果要做的精确一点

在加一个表

table_visit

字段:ip

1更次刷新取得游客$ip;

2.取得$ip后.查询 table_vist .

如果存在则不更新table_counter.

如果不存在,则更新table_vist ,更新语句同上.并把$ip插入table_visit

如果还需要做的更人性化一点.设置一个时间间隔,比如说10分钟.$diff = 600;

在table_visit再加上一个字段

datetime :int(10)(时间戳).记录游客访问时间.

1更次刷新取得游客$ip 和 时间$date = time();

2.查询 table_vist .

$sql = "SELECT * FROM table_vist WHERE ip = '$ip'";

3.如果不存在.则把$ip和$date插入表table_vist.

$sql = "INSERT INTO table_vist SET ip = '$ip',timedate=$date";

并更新table_counter;

4.如果存在,则判断该条查询结果的timedate 和 现在时间$date,的差值.和 $diff比较

少于则不做任何操作.

大于则更新table_vist 。$sql = "UPDATE table_vist SET timedate = $date WHERE ip = '$ip'";

并更新table_visit;

请问下php中 怎么编写网站计数器 而不是网页计数器

随便怎么做~~~~~

COOKIE也能做判断,IP也能

就是你想怎么做了

只要单独调出一个 公共文件,在里面做判断是否 要 +1 就行了

求php编写的网页计数器代码(用cookie防止重复刷新计数)

?php

$cFile="count.txt";

$acctime=time();

if(file_exists($cFile)){

$fp=fopen($cFile,"r");

$str=fgets($fp,22);

fclose($fp);

$count=trim($str);

$count++;

}else{

$count=1;

}

$first=false;

if(!isset($_COOKIE['acctime'])){

setcookie("acctime",$acctime,time()+3600*24);

$first=true;

$acctime=3600*24+$acctime;

}else{

$acctime=3600*24+$_COOKIE['acctime'];

}

if($first||$acctime=time()){

$count=sprintf("%d",$count);

$fp=fopen($cFile,"w");

fputs($fp,$count);

fclose($fp);

}else{

$count--;

}

print "您是第 ".$count." 位访客。您下次访问计入统计的时间是:".date("Y-n-j H:i:s",$acctime)."。";

?

求救!!!php写的计数器,在主页包涵的时候,多了个1

?php echo include"jishu.php"; ?

each 去掉,另外给你升华下,看看这个按照小时计算的记数器.你能学到很多对数据库的操作,和数组\函数等基本技术.努力!!

point.php

require_once("fun.php"); //包含数据库连接和函数

/*****************************新建部分*****************************/

//检查今天是否建立了数据

$query_d = "select * from i_visit where i_date = '$d'";

$result_d = @mysql_query( $query_d , $link_p )or die("Query Error!");

//如果没有-------建立

if(!mysql_num_rows($result_d))

{

$i_time=cout_time();

$i_point=cout_point();

$query_in="insert into i_visit ( i_point , i_date , i_time )

values ( '$i_point' , '$d' , '$i_time' )";

@mysql_query( $query_in , $link_p ) or die("Insert error");

//echo "创建成功br";

}

/*****************************更新部分*****************************/

else

{

$i_data = mysql_fetch_array($result_d);

$i_p = last_p($i_data["i_point"])+1 ; //最后点数

$i_h = last_p($i_data["i_time"]) ; //最后时间

//如果最后一个时间不是现在时间

if($i_h != $h)

{

$i_time = cout_time();

$i_point = cout_point($i_data["i_point"],$i_h);

$query_in="update i_visit set i_point= '$i_point' , i_time= '$i_time' where i_date='$d'";

@mysql_query( $query_in , $link_p ) or die("Update error");

//echo "修改成功";

}

//如果是最后一个时间

else

{

$i_point=cout_point($i_data["i_point"],$i_h);

$query_in="update i_visit set i_point= '$i_point' where i_date='$d'";

@mysql_query( $query_in , $link_p ) or die("Update error");

//echo "当前数字是$i_pbr"; /*****************时刻准备关闭的*/

}

}

/*****************************统计部分:*****************************/

$date_s=$d;$date_e=$d; //统计日期

$query ="select * from i_visit where i_date = '$date_s' and i_date = '$date_e' order by i_date";

$result=@mysql_query( $query , $link_p ) or die("search error");

$s_num=mysql_num_rows($result);

//日统计

if( $s_num == 1 )

{

$s_row=mysql_fetch_array($result);

$s_array = explode( "," , $s_row["i_point"] );

$s_avp=24;

$s_sum=array_sum($s_array);

}

//如果是多天

elseif( $s_num 1 )

{

$s_array=array();$i=0;$s_sum=0;

while ( $s_row=mysql_fetch_array($result) )

{

$temp = explode(",",$s_row["i_point"]);

$s_array[$i] = array_sum($temp);

$s_sum+=$s_array[$i]; //计算总和

$s_array[$i+1] = $s_row["i_date"]; //基数为日期,偶数为数据;

$i+=2;

}

$s_avp=count_days($date_e,$date_s);

}

else

{

echo "没有数据";

flush();

}

$s=implode(",",$s_array);

$s_sum=$s_sum; //总和

$s_max=max($s_array); //最大数

$s_count=count($s_array); //总数

$s_avp=round($s_sum/$s_avp); //平均数

@mysql_close($link_p);

?

fun.php

?php

date_default_timezone_set ('Asia/Shanghai');

$d=date("Y-m-d");

$h=date("G");

$link_p=@mysql_connect("localhost","root","00000000")or die("Connect Error");

$select=@mysql_select_db("hit",$link_p) or die ("Select Error");

//时间输出

function cout_time()

{

global $h;

$temp="";

for( $i = 0 ; $i $h ; $i++)

{

$temp .="$i,";

}

$temp.=$h;

return $temp;

}

//点数输出

function cout_point($x=0,$y=0) //x为要添加的字串,Y为最后时间,Z为更改数

{

global $h;

while($h-$y)

{

$y++;

$x .=",0";

}

$temp=strrpos($x , ",")?strrpos($x , ",")+1:0;

return substr( $x ,0, $temp). (substr($x,$temp)+1);

}

//最后时间

function last_p($x)

{

return substr( $x , strrpos($x , ",")+1 ) ;

}

?

你可以研究下cout_point函数,如何用explode implode把它写出来

php计数器

o(╯□╰)o

1、把第14行的result前加$即$result

2、第22行的else 的函数体应该

else{

$sql = "SELECT COUNT( * ) FROM `counter` WHERE new='1'";

$result=mysql_db_query( $mysql_database, $sql,$conn );

$row=mysql_fetch_row($result);

mysql_free_result($result);

} 吧?


分享名称:制作数据库版计数器php 计数器的实现
文章来源:http://cdkjz.cn/article/hipjcp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220