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 OPCode缓存 APC详细介绍
Oct 12 PHP
Apache服务器无法使用的解决方法
May 08 PHP
php递归方法实现无限分类实例代码
Feb 28 PHP
php实现mysql事务处理的方法
Dec 25 PHP
PHP的Socket通信之UDP通信实例
Jul 02 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 PHP
PHP中的多种加密技术及代码示例解析
Oct 20 PHP
php创建图像具体步骤
Mar 13 PHP
微信公众号实现会员卡领取功能
Jun 08 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
Feb 21 PHP
php 防护xss,PHP的防御XSS注入的终极解决方案
Apr 01 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
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
2007/09/30 PHP
JS window.opener返回父页面的应用
2009/10/24 Javascript
javascript写的日历类(基于pj)
2010/12/28 Javascript
toggle一个div显示或隐藏且可扩展成自定义下拉框
2013/09/12 Javascript
jquery动态加载js/css文件方法(自写小函数)
2014/10/11 Javascript
js style动态设置table高度
2014/10/21 Javascript
JS中Location使用详解
2015/05/12 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
BootStrap实用代码片段之一
2016/03/22 Javascript
jQuery内容折叠效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
javascript实现简易计算器
2017/02/01 Javascript
详解vue-cli中配置sass
2017/06/21 Javascript
利用纯js + transition动画实现移动端web轮播图详解
2017/09/10 Javascript
Vue单页应用引用单独的样式文件的两种方式
2018/03/30 Javascript
在vue项目中引用Iview的方法
2018/09/14 Javascript
小程序日历控件使用方法详解
2018/12/29 Javascript
详解基于 Node.js 的轻量级云函数功能实现
2019/07/08 Javascript
js利用iframe实现选项卡效果
2020/08/09 Javascript
[48:28]完美世界DOTA2联赛循环赛FTD vs Magma第二场 10月30日
2020/10/31 DOTA
python数据结构之二叉树的建立实例
2014/04/29 Python
python两种遍历字典(dict)的方法比较
2014/05/29 Python
Python+matplotlib实现填充螺旋实例
2018/01/15 Python
详谈python3中用for循环删除列表中元素的坑
2018/04/19 Python
Python3爬取英雄联盟英雄皮肤大图实例代码
2018/11/14 Python
Python中print和return的作用及区别解析
2019/05/05 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
pandas apply使用多列计算生成新的列实现示例
2021/02/24 Python
Css3+Js制作漂亮时钟(附源码)
2013/04/24 HTML / CSS
互动出版网:专业书籍
2017/03/21 全球购物
房地产销售员的自我评价分享
2013/12/04 职场文书
儿子婚宴答谢词
2014/01/09 职场文书
《悯农》教学反思
2014/04/28 职场文书
医院我们的节日活动实施方案
2014/08/22 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
2019 入党申请书范文
2019/07/10 职场文书
nginx部署多前端项目的几种方法
2021/05/25 Servers