ip签名探针


Posted in PHP onOctober 09, 2006

可以用做签名,论坛头像

PHP代码:--------------------------------------------------------------------------------
<?php
/****************************************************
残风制作ip签名探针---stormor@163.com
如果有显示不正确的地方请发E-mail给我,以便修改!
*****************************************************/
Header("Content-type: image/png");

if(getenv("HTTP_CLIENT_IP")) {
$ip = getenv("HTTP_CLIENT_IP");
$ip_agent = getenv("REMOTE_ADDR");
} elseif(getenv("HTTP_X_FORWARDED_FOR")) {
$ip_real = getenv("HTTP_X_FORWARDED_FOR");
$ip_agent = getenv("REMOTE_ADDR");
} else {
$ip_real = getenv("REMOTE_ADDR");
$ip_agent = "";
}

if(!$ip_agent){
$wenzi="IP:";
$ip_count=strlen($ip_real);
$left=22;
$width=$ip_count*6+$left+5;
$height=14;
$picture=Imagecreate($width,$height);
$bgcolor=ImageColorAllocate($picture,225,250,225);
$bordercolor=ImageColorAllocate($picture,0,0,0);
$fontcolor=ImageColorAllocate($picture,0,0,0);
Imageline($picture,0,0,$width-1,0,$bordercolor);
Imageline($picture,0,0,0,$height-1,$bordercolor);
Imageline($picture,$width-1,$height-1,$width-1,0,$bordercolor);
Imageline($picture,$width-1,$height-1,0,$height-1,$bordercolor);
Imagestring($picture,2,2,0,$wenzi,$fontcolor);
Imagestring($picture,2,$left+2,0,$ip_real,$fontcolor);
Imagepng($picture);
ImageDestroy($picture);
}else{
$wenzi1="IP1:";
$wenzi2="IP2:";
$ip_count1=strlen($ip_real);
$ip_count2=strlen($ip_agent);
$left=26;
if($ip_count1>=$ip_count2){$width=$ip_count1*6+$left+5;}else{$width=$ip_count2*6+$left+5;}
$height=29;
$middle=$height/2+1;
$picture=Imagecreate($width,$height);
$bgcolor=ImageColorAllocate($picture,225,250,225);
$bordercolor=ImageColorAllocate($picture,0,0,0);
$fontcolor=ImageColorAllocate($picture,0,0,0);
Imageline($picture,0,0,$width-1,0,$bordercolor);
Imageline($picture,0,0,0,$height-1,$bordercolor);
Imageline($picture,$width-1,$height-1,$width-1,0,$bordercolor);
Imageline($picture,$width-1,$height-1,0,$height-1,$bordercolor);
Imageline($picture,$width-1,$middle-1,0,$middle-1,$bordercolor);
Imagestring($picture,2,2,0,$wenzi1,$fontcolor);
Imagestring($picture,2,$left+2,0,$ip_real,$fontcolor);
Imagestring($picture,2,2,$middle,$wenzi2,$fontcolor);
Imagestring($picture,2,$left+2,$middle,$ip_agent,$fontcolor);
Imagepng($picture);
ImageDestroy($picture);
}

?>

--------------------------------------------------------------------------------

PHP 相关文章推荐
PHP IN_ARRAY 函数使用注意事项
Jul 24 PHP
.htaccess文件保护实例讲解
Feb 06 PHP
写php分页时出现的Fatal error的解决方法
Apr 18 PHP
php遍历数组的4种方法总结
Jul 05 PHP
php使用session二维数组实例
Nov 06 PHP
php判断类是否存在函数class_exists用法分析
Nov 14 PHP
PHP生成压缩文件实例
Feb 07 PHP
PHP cURL初始化和执行方法入门级代码
May 28 PHP
smarty中常用方法实例总结
Aug 07 PHP
PHP检测用户是否关闭浏览器的方法
Feb 14 PHP
php 获取文件行数的方法总结
Oct 11 PHP
详解php反序列化
Jun 10 PHP
PHP默认安装产生系统漏洞
Oct 09 #PHP
把PHP安装为Apache DSO
Oct 09 #PHP
PHP4中实现动态代理
Oct 09 #PHP
phpmyadmin操作流程
Oct 09 #PHP
一个用于MySQL的PHP XML类
Oct 09 #PHP
ASP知识讲座四
Oct 09 #PHP
php.ini中文版
Oct 09 #PHP
You might like
php设计模式 Facade(外观模式)
2011/06/26 PHP
php代码检查代理ip的有效性
2016/08/19 PHP
PHP实现打包下载文件的方法示例
2017/10/07 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
2019/04/09 PHP
根据地区不同显示时间的javascript代码
2007/08/13 Javascript
javascript引用对象的方法代码
2007/08/13 Javascript
利用JS延迟加载百度分享代码,提高网页速度
2013/07/01 Javascript
js的正则test,match,exec详细解析
2014/01/29 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
JavaScript操作XML文件之XML读取方法
2015/06/09 Javascript
AngualrJS中每次$http请求时的一个遮罩层Directive
2016/01/26 Javascript
JS实现多级菜单中当前菜单不随页面跳转样式而发生变化
2017/05/30 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
2019/05/27 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
前端开发基础javaScript的六大作用
2020/08/06 Javascript
[48:44]2014 DOTA2国际邀请赛中国区预选赛5.21 TongFu VS HGT
2014/05/22 DOTA
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
Python写的一个简单DNS服务器实例
2014/06/04 Python
python通过wxPython打开一个音频文件并播放的方法
2015/03/25 Python
python实现批量下载新浪博客的方法
2015/06/15 Python
python三大神器之fabric使用教程
2019/06/10 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
python使用SQLAlchemy操作MySQL
2020/01/02 Python
OpenCV python sklearn随机超参数搜索的实现
2020/01/17 Python
Python 实现平台类游戏添加跳跃功能
2020/03/27 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
2020/06/24 Python
CSS3实现缺角矩形,折角矩形以及缺角边框
2019/12/20 HTML / CSS
AmazeUI 模态窗口的实现代码
2020/08/18 HTML / CSS
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
2015/01/27 面试题
人力资源主管的岗位职责
2014/03/15 职场文书
我的大学四年规划书范文2014
2014/09/26 职场文书
习总书记三严三实学习心得体会
2014/10/13 职场文书
装饰施工员岗位职责
2015/04/11 职场文书
情况说明书格式及范文
2019/06/24 职场文书