- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
php如何实现验证码课案
php如何实现验证码
验证码在表单实现越来越多了,但是用js的写的验证码,总觉得不方便,所以学习了下php实现的验证码。
验证码在表单实现越来越多了,但是用js的写的验证码,总觉得不方便,所以学习了下php实现的验证码。好吧,其实是没有事情干,但是又不想浪费时间,所 以学习了下php实现验证码。正所谓,技多不压身。而且,也可以封装成一个函数,以后使用的时候也是很方便的,当然现在未封装。
现在来说说简单的纯数字验证码吧。
如果是初学者,建议按照我代码的注释?//数字 ?一步步来。最简单的方法,还是把整个代码复制走了。
新建一个captcha.php:
php?
????//10设置session,必须处于脚本最顶部?
????session_start();?
?
????$image?=?imagecreatetruecolor(100,?30);????????//1设置验证码图片大小的函数?
????//5设置验证码颜色?imagecolorallocate(int?im,?int?red,?int?green,?int?blue);?
????$bgcolor?=?imagecolorallocate($image,255,255,255);?//#ffffff?
????//6区域填充?int?imagefill(int?im,?int?x,?int?y,?int?col)??(x,y)?所在的区域着色,col?表示欲涂上的颜色?
????imagefill($image,?0,?0,?$bgcolor);?
????//10设置变量?
????$captcha_code?=?;?
????//7生成随机数字?
????for($i=0;$i4;$i++){?
????????//设置字体大小?
????????$fontsize?=?6;?????????
????????//设置字体颜色,随机颜色?
????????$fontcolor?=?imagecolorallocate($image,?rand(0,120),rand(0,120),?rand(0,120));????????????//0-120深颜色?
????????//设置数字?
????????$fontcontent?=?rand(0,9);?
????????//10.=连续定义变量?
????????$captcha_code?.=?$fontcontent;?????
????????//设置坐标?
????????$x?=?($i*100/4)+rand(5,10);?
????????$y?=?rand(5,10);?
?
????????imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);?
????}?
????//10存到session?
????$_SESSION[authcode]?=?$captcha_code;?
????//8增加干扰元素,设置雪花点?
????for($i=0;$i200;$i++){?
????????//设置点的颜色,50-200颜色比数字浅,不干扰阅读?
????????$pointcolor?=?imagecolorallocate($image,rand(50,200),?rand(50,200),?rand(50,200));?????????
????????//imagesetpixel?—?画一个单一像素?
????????imagesetpixel($image,?rand(1,99),?rand(1,29),?$pointcolor);?
????}?
????//9增加干扰元素,设置横线?
????for($i=0;$i4;$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);?
????}?
?
????//2设置头部,image/png?
????header(Content-Type:?image/png);?
????//3imagepng()?建立png图形函数?
????imagepng($image);?
????//4imagedestroy()?结束图形函数??销毁$image?
????imagedestro
您可能关注的文档
最近下载
- 质量管理体系认证规则(正式版).pdf VIP
- 2024年四川省宜宾市中考历史试卷(含答案与解析).docx VIP
- ICAO4-900句(必威体育精装版整理版).pdf VIP
- 2025年贵州高考化学真题及答案 .pdf VIP
- 生活垃圾卫生填埋场库区防渗系统工程验收相关表格.pdf VIP
- 客户满意度调查表模板.docx VIP
- 一年级升二年级暑假数学作业.docx VIP
- 专题04 实验:打点计时器的使用和逐差法测加速度-【好题汇编】备战2024-2025学年高一物理上学期期末真题分类汇编(新高考通用).docx VIP
- 2025年湖北武汉中考英语真题及答案完整版202520259.pdf VIP
- 课题开题报告:数智赋能下高职院校学生数字胜任力培养模式与路径优化研究.docx VIP
文档评论(0)