php记录来访者的相关信息并生成图片,效果图如下。
代码如下,本篇文章只写了一些初级的东西,有需要的朋友可以根据自己的情况进行修改。
<?php
//功能:来访信息生成图片
function getBrowse(){//记录来访者的浏览器信息
global $_SERVER;
$Agent=$_SERVER['HTTP_USER_AGENT'];
$browseinfo='';
if(ereg('Mozilla',$Agent)&&!ereg('MSIE',$Agent)){
$browseinfo='Netscape Navigator';
}
if(ereg('Opera',$Agent)){
$browseinfo='Opera';
}
if(ereg('Mozilla',$Agent)&&ereg('MSIE',$Agent)){
$browseinfo='Internet Explorer';
}
if(ereg('Chrome',$Agent)){
$browseinfo="Chrome";
}
if(ereg('Firefox',$Agent)){
$browseinfo="Firefox";
}
return $browseinfo;
}
function getIP(){//记录来访者的IP信息
global $_SERVER;
if(getenv('HTTP_CLIENT_IP')){
$ip=getenv('HTTP_CLIENT_IP');
}else if(getenv('HTTP_X_FORWARDED_FOR')){
$ip=getenv('HTTP_X_FORWARDED_FOR');
}else if(getenv('REMOTE_ADDR')){
$ip=getenv('REMOTE_ADDR');
}else{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
function getOS(){//记录来访者的系统信息
global $_SERVER;
$agent=$_SERVER['HTTP_USER_AGENT'];
$os=false;
if(eregi('win',$agent)&&strpos($agent,'95')){
$os='Windows 95';
}else if(eregi('win 9x',$agent)&&strpos($agent,'4.90')){
$os='Windows ME';
}else if(eregi('win',$agent)&&ereg('98',$agent)){
$os='Windows 98';
}else if(eregi('win',$agent)&&eregi('nt 5.1',$agent)){
$os='Windows XP';
}else if(eregi('win',$agent)&&eregi('nt 5.2',$agent)){
$os='Windows 2003';
}else if(eregi('win',$agent)&&eregi('nt 5',$agent)){
$os='Windows 2000';
}else if(eregi('win',$agent)&&eregi('nt',$agent)){
$os='Windows NT';
}else if(eregi('win',$agent)&&ereg('32',$agent)){
$os='Windows 32';
}else if(eregi('linux',$agent)){
$os='Linux';
}else if(eregi('unix',$agent)){
$os='Unix';
}else if(eregi('sun',$agent)&&eregi('os',$agent)){
$os='SunOS';
}else if(eregi('ibm',$agent)&&eregi('os',$agent)){
$os='IBM OS/2';
}else if(eregi('Mac',$agent)&&eregi('PC',$agent)){
$os='Macintosh';
}else if(eregi('PowerPC',$agent)){
$os='PowerPC';
}else if(eregi('AIX',$agent)){
$os='AIX';
}else if(eregi('HPUX',$agent)){
$os='HPUX';
}else if(eregi('NetBSD',$agent)){
$os='NetBSD';
}else if(eregi('BSD',$agent)){
$os='BSD';
}else if(ereg('OSF1',$agent)){
$os='OSF1';
}else if(ereg('IRIX',$agent)){
$os='IRIX';
}else if(eregi('FreeBSD',$agent)){
$os='FreeBSD';
}else if(eregi('teleport',$agent)){
$os='teleport';
}else if(eregi('flashget',$agent)){
$os='flashget';
}else if(eregi('webzip',$agent)){
$os='webzip';
}else if(eregi('offline',$agent)){
$os='offline';
}else{
$os='Unknown';
}
return $os;
}
$ob=getBrowse();
$os= getOS();
$ip=getIP();
$str="IP:".$ip;
$str2="OS:".$os;
$str3=$ob;
$str4="from : www.bcty365.com";
$width=250;//验证码图片的宽度
$height=110;//验证码图片的高度
@header("Content-Type:image/png");
$im=imagecreate($width,$height);
//背景色
$back=imagecolorallocate($im,0xFF,0xFF,0xFF);
//模糊点颜色
$pix=imagecolorallocate($im,187,230,247);
//字体色
$font=imagecolorallocate($im,41,163,238);
//绘模糊作用的点
mt_srand();
for($i=0;$i<1000;$i++){
imagesetpixel($im,mt_rand(0,$width),mt_rand(0,$height),$pix);
}
imagestring($im,5,7,5,$str,$font);
imagestring($im,5,7,30,$str2,$font);
imagestring($im,5,7,55,$str3,$font);
imagestring($im,5,7,80,$str4,$font);
imagerectangle($im,0,0,$width-1,$height-1,$font);
imagepng($im);
imagedestroy($im);
评论列表()