php访客代码
㈠ 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 根据IP地址控制访问的代码
假设有
IP
地址范围
192.168.0.0~192.168.0.255,只允许此
IP
段访问的代码如下:
复制代码
代码如下:
<?php
$IP
=
$_SERVER['REMOTE_ADDR'];
$from
=
strcmp($IP,'192.168.0.0');
$to
=
strcmp($IP,'192.168.0.255');
if
(!($from
>=
0
&&
$to
<=
0))
echo
"Access
Denied";
else
echo
"Homepage";
?>
从流程上讲,这段代码首先捕获访客
IP
地址,然后判断该
IP
地址是否符合访问条件。符合则正常输出页面,反之拒绝访问。
据此,如果用户
IP
地址满足要求,只需简单输出或包含页面文件即可。文件包含代码如下:
复制代码
代码如下:
<?php
if
(!($from
>=
0
&&
$to
<=
0))
echo
"Access
Denied";
else
include('homepage.html')";
?>
当然,也可以按判断结果跳转至不同页面。跳转代码如下:
复制代码
代码如下:
<?php
if
(!($from
>=
0
&&
$to
<=
0))
header('Location:
http://www.jb51.net/404.html');
else
header('Location:
http://www.jb51.net/index.html');
?>
㈢ php如何记录访客次数
需要把次数这个变量放到数据库里,比如表名叫table1,字段名叫clicktimes,假定现在初始值为0,则:
在代码中执行sql语句:update table1 set clicktimes=clicktimes+1 ,这样就ok了
不过按理应该要在哪个地方显示出来吧:
select clicktimes from table
㈣ 求助记录访客IP的PHP代码
/**
*获取客户端IP地址
*
*@accesspublic
*@returnstring
*/
functionget_client_ip()
{
static$ip=NULL;
if($ip!==NULL)return$ip;
if(isset($_SERVER['REMOTE_ADDR']))
{
$ip=$_SERVER['REMOTE_ADDR'];
}
elseif(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$arr=explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$pos=array_search('unknown',$arr);
if(false!==$pos)unset($arr[$pos]);
$ip=trim($arr[0]);
}
elseif(isset($_SERVER['HTTP_CLIENT_IP']))
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
//IP地址合法验证
$ip=(false!==ip2long($ip))?$ip:'0.0.0.0';
return$ip;
}
㈤ php代码,记录当天访问次数不写数据库而是记录在一个txt里
因为我现在不方便测试,所以可能还有些问题需要你自己修改
<?
$tim=date("H:i:s");
If($tim=="00:00:00")
{
$c_file="counter.txt";//把文件名赋值给变量
If(file_exists($c_file))//如果文件存在
{
unlink("$c_file");//删除文件
}
}
else
{
$c_file="counter.txt";//文件名赋值给变量
if(!file_exists($c_file))//如果文件不存在的操作
{$myfile=fopen($c_file,"w");//创建文件
fwrite($myfile,"0");//置入“0”
fclose($myfile);//关闭文件
}
$t_num=file($c_file);//把文件内容读入变量
$t_num[0]++;//文件内容自增1
echo
"欢迎!您是本站第".$t_num[0]."位访客!";//显示文件内容$myfile=fopen($c_file,"w");//打开文件
fwrite($myfile,$t_num[0]);//写入新内容
fclose($myfile);//关闭文件
if($t_num[0]<=20)//如果访问量不大于20就执行:
{
echo
"因为访问量小于或等于20,所以输出此语句";
}
else
{
echo
"因为访问量大于20,所以输出此语句";
}
}
?>
㈥ php怎么才能实现网站访客计数
下面的代码既可:
<?php
$countf='count.txt';//可以修改这一行,把文件保存在其它地方或者名字
$countn=file_get_counts($countf);
$countn++;
if($fp=fopen($countf,'w')){fputs($fp,$countn);fclose($fp);}
echo "您是本站第{$countn}位访客。";
?>
㈦ 求:php判断普通访客于搜索引擎蜘蛛代码,并根据来访用户给出不同代码
<?php
// 下面是一些常见的蜘蛛名
$flag = false;
$tmp = $_SERVER['HTTP_USER_AGENT'];
if(strpos($tmp, 'Googlebot') !== false){
$flag = true;
} else if(strpos($tmp, 'Baispider') >0){
$flag = true;
} else if(strpos($tmp, 'Yahoo! Slurp') !== false){
$flag = true;
} else if(strpos($tmp, 'msnbot') !== false){
$flag = true;
} else if(strpos($tmp, 'Sosospider') !== false){
$flag = true;
} else if(strpos($tmp, 'YoBot') !== false || strpos($tmp, 'OutfoxBot') !== false){
$flag = true;
} else if(strpos($tmp, 'Sogou web spider') !== false || strpos($tmp, 'Sogou Orion spider') !== false){
$flag = true;
} else if(strpos($tmp, 'fast-webcrawler') !== false){
$flag = true;
} else if(strpos($tmp, 'Gaisbot') !== false){
$flag = true;
} else if(strpos($tmp, 'ia_archiver') !== false){
$flag = true;
} else if(strpos($tmp, 'altavista') !== false){
$flag = true;
} else if(strpos($tmp, 'lycos_spider') !== false){
$flag = true;
} else if(strpos($tmp, 'Inktomi slurp') !== false){
$flag = true;
}
if($flag == false){
//正常用户代码
} else {
//蜘蛛处理代码
}
?>
可以放在网页程序的开头
㈧ 帮忙注释一段PHP代码,访客统计的,看不大懂,尽量每行都注释上吧,谢了。
<?php
$countfile="js/counter.inc"; //计数代码文件
$imagesext=".gif"; //图片后缀
$images="images/"; //图片路径
if(($fp=fopen($countfile,"r+"))==false){ //1、如果不能读操作模式打开那个计数代码文件
printf("open file %s failed!",$countfile); //那么打印一行错误(含文件名)
exit; //同时,退出本php程序
}
else //2、如果能打开那个计数代码文件
{
$count=fread($fp,10); //读取那个文件的第一行文字(应该是数字)
$count=$count+1; //把读取到的数字+1,存到count变量里
fclose($fp); //关闭那个文件
$fp=fopen($countfile,"w+"); //再次用写操作模式打开那个文件
fwrite($fp,$count); //把+1后的数字存入那个文件
fclose($fp); //关闭那个文件
if ($text) //判断使用图形还是文本计数器(这行代码会报notice错误)
{
echo $count; //如果是文本,直接显示在页面上
}
else //如果是图形,以下是显示图形
{
$longstr=strlen($count);
for ($x=0;$x<$longstr;$x++) //遍历那个数字的位数
{
echo "<img src=";
echo $images;
echo substr($count,$x,1); //前后几行代码都 是用一个目的:把这个数字用gif图片给展示出来
echo $imagesext;
echo ">";
}
}
}
?>
㈨ 求大神帮补充完善php网页访客计数器用图片显示的代码。在线等。
给你个验证码图片的,你参考,把内容替换了;
<?php
session_start();
//如果浏览器显示“图像XXX因其本身有错无法显示”,可尽量去掉文中空格
//先成生背景,再把生成的验证码放上去
$img_height=47;//先定义图片的长、宽
$img_width=21;
$authnum='';
//生产验证码字符
$ychar="0,1,2,3,4,5,6,7,8,9";
$list=explode(",",$ychar);
for($i=0;$i<4;$i++){
$randnum=rand(0,9);
$authnum.=$list[$randnum];
}
//把验证码字符保存到session
$_SESSION["vcode"] = $authnum;
$aimg = imagecreate($img_height,$img_width); //生成图片
imagecolorallocate($aimg, 255,255,255); //图片底色,ImageColorAllocate第1次定义颜色PHP就认为是底色了
$black = imagecolorallocate($aimg, 0,0,0); //定义需要的黑色
for ($i=1; $i<=100; $i++) {
imagestring($aimg,1,mt_rand(1,$img_height),mt_rand(1,$img_width),"@",imagecolorallocate($aimg,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255)));
}
//为了区别于背景,这里的颜色不超过200,上面的不小于200
for ($i=0;$i<strlen($authnum);$i++){
imagestring($aimg, 5,($i+1)*8,4, $authnum[$i],imagecolorallocate($aimg,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200)));
}
imagerectangle($aimg,0,0,$img_height-1,$img_width-1,$black);//画一个矩形
header("Content-type: image/PNG");
imagepng($aimg); //生成png格式
imagedestroy($aimg);
?>