PHP和.NET版客户端信息自动生成
我使用的是全角,大家修改为半角
不是本人原创
再一些学习教程中大多有简单介绍
效果screen.width-333)this.width=screen.width-333"%20border=0>
.NET版本
<%@Page%20Language="C#"%20Debug="true"%>%20
<%@Import%20namespace="System"%>%20
<%@Import%20namespace="System.Drawing"%>%20
<%@Import%20namespace="System.IO"%>%20
<%%20
string%20sReferer=Request.ServerVariables["HTTP_REFERER"];%20
string%20sLanguage,sBrowser,sSys;%20
if(Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"].IndexOf("zh-cn")>=0){%20
sLanguage="Chinese";%20
}%20
else%20
{%20
sLanguage=Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"];%20
}%20
string[]%20aUserAgent=Request.ServerVariables["HTTP_USER_AGENT"].Split(’;’);%20
if(aUserAgent.Length>2){%20
sBrowser=aUserAgent[1].Replace("MSIE","Internet%20Explorer").Trim();%20
if(sBrowser=="U"){%20
sBrowser="Mozilla";%20
}%20
sSys=aUserAgent[2].Replace(")","");%20
sSys=sSys.Replace("NT%205.2","2003");%20
sSys=sSys.Replace("NT%205.1","XP");%20
sSys=sSys.Replace("NT%205.0","2000");%20
sSys=sSys.Replace("9x","Me").Trim();%20
}%20
else%20
{%20
sBrowser="Unknown";%20
sSys="Unknown";%20
}%20
int%20nWidth=260,nHeight=90;%20
Bitmap%20image=new%20Bitmap(nWidth,nHeight);%20
Graphics%20g=Graphics.FromImage(image);%20
Stream%20imgData=new%20MemoryStream();%20
g.Clear(Color.Snow);%20
g.DrawRectangle(Pens.Black,0,0,nWidth-1,nHeight-1)%20;%20
g.DrawString("Your%20IP%20:%20"%20+%20Request.ServerVariables["REMOTE_ADDR"],new%20Font("Courier%20New",%209,FontStyle.Bold),new%20SolidBrush(Color.FromArgb(200,%2014,%2091)),6,6);%20
g.DrawString("Language%20:%20"%20+%20sLanguage,new%20Font("Courier%20New",%209,FontStyle.Bold),new%20SolidBrush(Color.FromArgb(0,%200,%200)),6,26);%20
g.DrawString("Your%20OS%20:%20"%20+%20sSys,new%20Font("Courier%20New",%209,FontStyle.Bold),new%20SolidBrush(Color.FromArgb(0,0,255)),6,46);%20
g.DrawString("Browser%20:%20"%20+%20sBrowser,new%20Font("Courier%20New",%209,FontStyle.Bold),new%20SolidBrush(Color.FromArgb(0,%20160,%200)),6,66);%20
g.Dispose();%20
Response.ContentType="image/gif";
image.Save(Response.OutputStream ,System.Drawing.Imaging.ImageFormat.Gif);
%>PHP版本
//处理要显示的相关信息
if(!(strpos($_SERVER["HTTP_ACCEPT_LANGUAGE"],"zh-cn")===false)){
$sLanguage="Chinese";
}
else
{
$sLanguage=$_SERVER["HTTP_ACCEPT_LANGUAGE"];
}
$aUserAgent=explode(";",$_SERVER["HTTP_USER_AGENT"]);
if(count($aUserAgent)>2){
$sBrowser=trim(str_replace("MSIE","Internet Explorer",$aUserAgent[1]));
if(trim($sBrowser)=="U"){
$sBrowser="Mozilla";
}
$sSys=str_replace(")","",$aUserAgent[2]);
$sSys=str_replace("NT 5.2","2003",$sSys);
$sSys=str_replace("NT 5.1","XP",$sSys);
$sSys=str_replace("NT 5.0","2000",$sSys);
$sSys=trim(str_replace("9x","Me",$sSys));
}
else
{
$sBrowser="Unknown";
$sSys="Unknown";
}
header ("Content-type: image/png");
//定义宽高
$nWidth=250;
$nHeight=90;
$im = @imagecreate ($nWidth,$nHeight) or die ("Cannot Initialize new GD image stream");
//色彩设置
$background_color = imagecolorallocate ($im, 235, 235, 240);
$sColorRed = imagecolorallocate ($im, 200, 14, 91);
$sColorBlack = imagecolorallocate ($im, 0, 0, 0);
$sColorBlue = imagecolorallocate ($im, 0, 0, 255);
$sColorGreen = imagecolorallocate ($im, 0, 160, 0);
//绘制边框
imagefilledrectangle($im, 0, 0, $nWidth - 1, $nHeight - 1, $background_color);
imagerectangle($im, 0, 0, $nWidth - 1, $nHeight - 1, $sColorBlack);
//生成文字
imagestring ($im, 3, 6, 6, "Your IP : " . $_SERVER["REMOTE_ADDR"], $sColorRed);
imagestring ($im, 3, 6, 26, "Language : " . $sLanguage, $sColorBlack);
imagestring ($im, 3, 6, 46, "Your OS : " . $sSys, $sColorBlue);
imagestring ($im, 3, 6, 66, "Browser : " . $sBrowser, $sColorGreen);
//产生
imagepng ($im);
imagedestroy ($im);
?>