您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> php >> 正文

php生成SessionID和图片校验码的思路和实现

作者:佚名    信息学院来源:整理    点击数:    更新时间:2008-2-2 我要参与讨论

  数:$check_code: 校验码字符串,一般由create_check_code()函数来获得
返 回 值:返回该图片
函数作者:heiyeluren
*/
function create_check_image( $check_code )
{
 // 产生一个图片
 $im = imagecreate(65,22);
 $black = ImageColorAllocate($im, 0,0,0);  // 背景颜色
 $white = ImageColorAllocate($im, 255,255,255);  // 前景颜色
 $gray = ImageColorAllocate($im, 200,200,200);
 imagefill($im,68,30,$gray);
 
 // 将四位整数验证码绘入图片
 imagestring($im, 5, 8, 3, $check_code, $white);
 // 加入干扰象素
 for($i=0;$i<200;$i++)
 {
     $randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
     imagesetpixel($im, rand()%70 , rand()%30 , $randcolor);
 }
 // 输出图像
 Header("Content-type: image/PNG"); 
 ImagePNG($im);
 ImageDestroy($im);  
}

这里我们要注意,引用create_check_image()函数的时候,必须在一个单独的文件里,因为输出文件头的时候输出的格式是图像格式,夹杂其他内容,会导致图片无法显示。另外,图片成生函数,你是可以更改的,比如你想改颜色,那么你就把前景色和背景色的生成位置换一下,那么颜色就不一样了,同时也要把校验码的颜色换了,不然背景和校验码都是黑色就显示不出来了。

上一页  [1] [2] 

在google里搜索更多php生成SessionID和图片校验码的思路和实现

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明