一个自定义位数的php多用户计数器代码


Posted in PHP onMarch 11, 2007

此计数器能够自定义任意位数,而且在免费提供的时候能够显示一个简单的广告。
运行的时候需要在计数器目录下创建一个nobody帐户有权改写的目录datas.
实际运行的例子在
http://www.hnpts.ha.cn/freecount.htm
<?
Header("Content-type: image/png");
if ($user=="") $user="test";
$fn="datas/".$user.".txt";
if ($bit=="") $bit=8;   //取默认值
if (is_readable($fn)) {$f=fopen($fn,"r");
$c=fgets($f,255);fclose($f);} //读出原来的计数值
else $c="0"; //新用户
$l=strlen($c);  //计算实际值长度
$cnt="";
for ($i=0;$i<$bit-$l;$i++) $cnt.="0";//前面加“0”补足指定的位数
$cnt.=$c;$c1=intval($c);$c1++;
$f=fopen($fn,"w");fputs($f,$c1);fclose($f); //写回
  $font=20;
if (($c1%10==9)&&($user!="test")) {$cnt="www.hnpts.ha.cn";$font=16;}
//达到条件就显示广告
$s=ImageTTFBBox($font,0,"times.ttf", $cnt);
$x=abs($s[4])+8;$y=abs($s[5])+7;
$im = imagecreate($x,$y);
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
if ($font==20) {$green = ImageColorAllocate($im, 0,255,0);
imagerectangle($im,1,1,$x-2,$y-2,$white);}
else $green = ImageColorAllocate($im, 255,255,255);
ImageTTFText($im,$font,0, 3,$y-5, $green, "times.ttf", $cnt);
ImagePng($im);
ImageDestroy($im);
?>

PHP 相关文章推荐
PHP生成静态页
Nov 25 PHP
PHP下通过系统信号量加锁方式获取递增序列ID
Sep 25 PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
php 字符串函数收集
Mar 29 PHP
php 操作数组(合并,拆分,追加,查找,删除等)
Jul 20 PHP
基于PHP异步执行的常用方式详解
Jun 03 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
Jul 05 PHP
ThinkPHP使用smarty模板引擎的方法
Jul 01 PHP
用PHP生成excel文件到指定目录
Jun 22 PHP
weiphp微信公众平台授权设置
Jan 04 PHP
PHP版单点登陆实现方案的实例
Nov 17 PHP
php7安装mongoDB扩展的方法分析
Aug 02 PHP
一个简单的PHP投票程序源码
Mar 11 #PHP
用PHP制作的意见反馈表源码
Mar 11 #PHP
PHP实现用户认证及管理完全源码
Mar 11 #PHP
随时给自己贴的图片加文字的php代码
Mar 08 #PHP
php网页后退不再出现过期
Mar 08 #PHP
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
Mar 07 #PHP
php下实现农历日历的代码
Mar 07 #PHP
You might like
PHP下几种删除目录的方法总结
2007/08/19 PHP
PHP-FPM之Chroot执行环境详解
2015/08/03 PHP
PHP+mysql实现从数据库获取下拉树功能示例
2017/01/06 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
用js传递value默认值的示例代码
2014/09/11 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
完美实现八种js焦点轮播图(下篇)
2020/04/20 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
2016/08/05 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
2017/05/12 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
浅谈JS中this在各个场景下的指向
2019/08/14 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
2020/09/07 Javascript
python获取文件扩展名的方法
2015/07/06 Python
在Python的Django框架中更新数据库数据的方法
2015/07/17 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
python+pyqt5实现图片批量缩放工具
2019/03/18 Python
django的model操作汇整详解
2019/07/26 Python
python word转pdf代码实例
2019/08/16 Python
Python实现自定义读写分离代码实例
2019/11/16 Python
Python sys模块常用方法解析
2020/02/20 Python
解决运行出现'dict' object has no attribute 'has_key'问题
2020/07/15 Python
python之随机数函数的实现示例
2020/12/30 Python
美国爆米花工厂:The Popcorn Factory
2019/09/14 全球购物
销售主管的自我评价分享
2014/01/03 职场文书
董事长秘书职责
2014/01/31 职场文书
四风问题自我剖析材料
2014/10/07 职场文书
2014年党员发展工作总结
2014/12/02 职场文书
慰问信范文
2015/02/14 职场文书
2015年高中语文教学总结
2015/08/18 职场文书
(开源)微信小程序+mqtt,esp8266温湿度读取
2021/04/02 Javascript
golang特有程序结构入门教程
2021/06/02 Python
springboot新建项目pom.xml文件第一行报错的解决
2022/01/18 Java/Android
Android Canvas绘制文字横纵向对齐
2022/06/05 Java/Android