博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP GD 生成图片验证码+session获取储存验证码
阅读量:7070 次
发布时间:2019-06-28

本文共 1764 字,大约阅读时间需要 5 分钟。

    以下分享一个PHP制作的图片验证码案例:案比例如以下图:

   运用PHP GD具体请看:http://www.php.net/manual/zh/book.image.php

   后台图片代码例如以下:

 

php session_start(); $image = imagecreatetruecolor(100,30);//创建一个宽100。高度30的图片 $bgcolor=imagecolorallocate($image,255,255,255);//图片背景是白色 imagefill($image,0,0,$bgcolor);//图片填充白色 //随机数 /** for($i=0;$i<4;$i++){ $fontsize=6; $fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $fontcontent=rand(0,9); $x=($i*100/4)+ rand(5,10); $y=rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); } **/ //随机数据 $captch_code=''; for($i=0;$i<4;$i++){ $fontsize=6; $fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $data='asdfdfglfg74erf21854hgfhgfhkg4ljkghjtrtywiqpoqpwepdfgvnjytyut12313345645667686797800'; $fontcontent=substr($data,rand(0,strlen($data)),1); $captch_code.=$fontcontent; $x=($i*100/4)+ rand(5,10); $y=rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); } $_SESSION['authcode']=$captch_code; //随机点 for($i=0;$i<200;$i++){ $pointcolor=imagecolorallocate($image,rand(50,120),rand(50,120),rand(50,120)); imagesetpixel($image,rand(1,99),rand(1,99),$pointcolor); } //随机线 for($i=0;$i<3;$i++){ $linecolor=imagecolorallocate($image,rand(80,220),rand(80,220),rand(80,220)); imageline($image,rand(1,99),rand(1,29),rand(1,99),rand(1,29),$linecolor); } header("content-type:image/png"); imagepng($image); imagedestory($image); ?>

前台代码例如以下:

验证码图片:

width="100" height="30" />

输入内容:

加入点击运行改动例如以下就可以:

验证码图片:

r="<?

php echo rand();?> width="100" height="30" /> <a href="javascript:void(0)" οnclick="document.getElementById('capthcha_img').src='captcha.php?

r='+Math.random()">换一个</a></p>

本案例原创,转载请注明。

  

你可能感兴趣的文章
屏蔽宽带运营商的弹窗广告
查看>>
halcon算子翻译——dev_set_preferences
查看>>
halcon算子翻译——gen_image_surface_first_order
查看>>
EasyTouch的使用官方文档操作步骤
查看>>
Django 0.3
查看>>
注册自定义HTTP Handlers
查看>>
impala查询慢
查看>>
《构建之法》指导下的作品调研
查看>>
块的垂直居中
查看>>
实验1 可视化初步了解
查看>>
Maya API编程快速入门
查看>>
分页小算法
查看>>
Cngigure和BUS实现远端配置
查看>>
XML工作原理和过程
查看>>
idea 搭建spring boot
查看>>
DOM、BOM方法起源
查看>>
C语言运算符优先级.
查看>>
算法-01-分治
查看>>
java自定义注解学习(二)_注解详解
查看>>
QTreeView
查看>>