⑴ thinkphp中如何获取用户的ip地址实现网站访问人数统计的计数器
thinkphp默认封装了获取ip方法:get_client_ip()
统计人数这个我也建议用cnzz,很方便,你想看的数据基本都能满足。
⑵ php中使用session网页计数器
你的思路有点混乱
session_start();之前不能有输出
如果session中没有count,就让$count++这显然不行,建议你用文本记录$count
这样写
<?
session_start();
$datfile='data.dat';
if(file_exists($datfile)){
$data=implode('',file($datfile));
$data=$data*1;
}else{
$data=0;
}
$fp=fopen($datfile,'w');
fwrite($fp,$data+1);
fclose($fp);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>session网页计数器</title>
</head>
<body>
<p>
您好,你已经浏览本网页<?php echo $data;?>次
</p>
</body>
</html>
⑶ php网站计数器程序,显示“您是本站的第XXX位访问者”
创建一个数据库表
表名: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网页中加入计数器
<?php $file="jishuqi.txt"; function jishuqi($file) { $a=fopen($file,"r"); $i=fread($a,"6"); fclose($a); $i+=1; echo "你是第".$i."次访问"; $w=fopen($file,"w"); fwrite($w,$i); fclose($w); } if (!file_exists($file)) { $ww=fopen($file,w); fwrite($ww,0); fclose($ww); } jishuqi($file); ?>
⑸ 求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访客计数器怎么做
用PHP读写文本文档制作最简单的访问计数器<?phpfunction get_hit($counter_file)//定义函数,内容用{}括起来,学过编程的人应该看出来了,跟C语言有点相似{$count=0;//将计数器归零,Php里的变量前面加上$号 if(file_exists($counter_file))//如果计数器文件存在,读取其中的内容{$fp=fopen($counter_file,"r");//r是read的缩写,代表读取的意思,以只读方式打开文件$count=0+fgets($fp,20);/*读取前20位数赋值给count变量,由于fgets()函数读取的是字符串,所以需要在前面+0来转换为整数,这一点跟ASP就不同了,ASP中字符串可以直接跟整型进行运算,而不用转换。*/fclose($fp);//关闭文件}$count++;//增加计数,这一点跟C就非常相似了$fp=fopen($counter_file,"w");//w是write的缩写,代表写入的意思,以写入的方式打开文件fputs($fp,$count);//输出计数值到文件fclose($fp);return($count);//返回计数值}?> <?php$hit=get_hit("counter.txt");//调用刚才定义的函数处理counter.txt文档,并把结果赋值给hit变量。echo "您是第<b>"."$hit"."</b>位访客!";//输出结果。PHP与ASP的区别在于:ASP的连字符是“&”,而Php的连字符是“.”。
⑺ 请问下php中 怎么编写网站计数器 而不是网页计数器
@JoinTable(name = "RT_GROUPUSER", joinColumns = {
@JoinColumn(name = "GID", referencedColumnName = "GID", nullable = false)}, inverseJoinColumns = {
@JoinColumn(name =z "USERID", referencedColumnName = "USERID", nullable = false)})
@ManyToMany
private Collection<BtUser> btUserCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "btGroup")
private Collection<RtGrouptaskitemscore> ;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "btGroup")
private Collection<RtProjectassign> rtProjectassignCollection;