为了账号安全,请及时绑定邮箱和手机立即绑定

PHP实现验证码制作

难度初级
时长 1小时20分
学习人数
综合评分9.80
173人评价 查看评价
10.0 内容实用
9.8 简洁易懂
9.6 逻辑清晰
  • 中文验证
    查看全部
  • <?php $image = imagecreatetruecolor( 100, 30 ); $bgcolor = imagecolorallocate( $image, 255, 255, 255 ); imagefill( $image, 0, 0, $bgcolor ); // 创建一个循环,循环200次 // 在循环内,用GD库生成一个随机颜色 // 在随机位置上画一个干扰点,颜色使用上面的随机颜色 for($i=0;$i<200;$i++){ $dot= imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200)); imagesetpixel($image,rand(1,99),rand(1,29),$dot); } header( 'content-type: image/png' ); imagepng( $image ); imagedestroy( $image );
    查看全部
    1 采集 收起 来源:习题

    2018-03-22

  • 当验证信息看不清的时候需要用到js动态校验 实现动态验证: 1、增加可点击的“换一个”文案 2、用js选取器选取验证码图片 3、用js修改验证码图片地址(改src)
    查看全部
  • form.php代码 <?php header('content-type:text/html;charset=utf-8'); if(isset($_REQUEST['authcode'])){ session_start(); if(strtolower($_REQUEST['authcode'])==$_SESSION['authcode']){ echo '<font color="#0000CC">输入正确</font>'; }else{ echo '<font color="#CC0000"> <b>输入错误</b> </font>'; } exit(); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>确认验证码</title> </head> <body> <form method="post" action="./form.php"> <p>验证码图片:<img border="1" src="./captcha.php?r=<?php echo rand();?>" width:100px; height:30px" /> <p>请输入图片中的内容:<input type="text" name="authcode" value="" /></p> <p><input type="submit" value="提交" ></p> </form> </body> </html>
    查看全部
  • 数字字母混合验证码,用到了substr()截取字符串的函数 for($i=0;$i<4;$i++){ $fontsize=6; $fontcolor=imagecolorallocate($image, rand(0,120),rand(0,120), rand(0,120)); $data="abcdefghijklmnopqrstuvwxyz123456789"; $fontcontent=substr($data,rand(0,strlen($data)),1); $x=($i*100/4)+rand(5,10); $y=rand(5,10); imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
    查看全部
  • 往画布中添加干扰元素 imagestring水平画一行字符 imagestring($image,int $front,$x,$y,strintg $s,int $con1)字体干扰 imagesetpixel($image,$x,$y,int $col) 一个点需要一个坐标,点干扰 imageline($iamge,$x,$y,$x1,$y1,$col) 线段是两个点,所以设两个坐标,线干扰
    查看全部
  • 1.创建画布 imagecreatetrueccolor(100,230)[默认黑色的] 2.设置背景色取代黑色默认颜色imagecolorallocate($image,rgb(0到255的值),rgb(0到255的值,rgb(0到255的值) 3.填充背景色到画布上 imagefill() 4.为空白画布上添加字符 imagestring() 生成数字等 5.添加点干扰元素 imagesetpixel() 生成点或者线干扰
    查看全部
  • <?php $image = imagecreatetruecolor(100,50); //生成一张100*50大小的图片(底图) header("content-type:image/png"); //定义图片格式为png 注意header一定要在image输出图像之前 $bgcolor = imagecolorallocate($image,200,200,200); //为一幅图分配颜色 imagefill($image,0,0,$bgcolor); //将颜色填充到底图上 imagepng($image); //区域填充 imagedestroy($image); //销毁资源,便于回收
    查看全部
  • 需要的技术: ASCII码理论, UTF-8编码理论 SESSION基础 前端Ajax基础:内容的校验
    查看全部
  • 因为读操作不会对数据产生影响,可以同时多个线程进行互不干扰,但是写数据的话就得进行加锁,也就是一个线程在操作时候,要保证其他线程不能同时对资源进行操作,不然最后数据就会发生错误,根据数据库引擎的加锁方式不同,可能有字段加锁,表加锁,开销也会不同,另外当数据量很大时候,根据存储结构不同,可能写入一个数据,会进行很大的数据变动,这时候就会比较消耗资源
    查看全部
    1 采集 收起 来源:验证码介绍

    2016-12-08

  • 老师讲的真不错,一听就懂了
    查看全部
    0 采集 收起 来源:习题

    2016-11-30

  • 图片验证码
    查看全部
  • captcha.php代码: <?php session_start(); $image = imagecreatetruecolor( 100,30 ); $bgcolor = imagecolorallocate($image,255,255,255); imagefill($image,0,0,$bgcolor); for($i=0;$i<200;$i++){ $pointcolor = imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200)); 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)); } $captch_code = ''; for($i=0;$i<4;$i++){ $fontsize = 6; $fontcolor = imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $data = 'abcdefghijkmnpqrstuvwxy3456789'; $fontcontent = substr($data,rand(0,strlen($data)-1),1); $captch_code.=$fontcontent; $x = ($i*100/4) + rand(5,10); $y = rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); } header('content-type:image/png'); imagepng($image); $_SESSION['authcode'] = $captch_code; ?>
    查看全部
  • form.php代码 <?php header('content-type:text/html;charset=utf-8'); if(isset($_REQUEST['authcode'])){ session_start(); if(strtolower($_REQUEST['authcode'])==$_SESSION['authcode']){ echo '<font color="#0000CC">输入正确</font>'; }else{ echo '<font color="#CC0000"> <b>输入错误</b> </font>'; } exit(); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>确认验证码</title> </head> <body> <form method="post" action="./form.php"> <p>验证码图片:<img border="1" src="./captcha.php?r=<?php echo rand();?>" width:100px; height:30px" /> <p>请输入图片中的内容:<input type="text" name="authcode" value"" /></p> <p><input type="submit" value="提交" ></p> </form> </body> </html>
    查看全部
  • 验证码步骤
    查看全部

举报

0/150
提交
取消
课程须知
本课程适合PHP初学者或者自学的童鞋们。
老师告诉你能学到什么?
1、如何拆解验证码项目 2、PHP的绘图扩展GD库的使用 3、如何用GD函数画图与验证码内容 4、如何用PHP做验证码校验,及动态校验 5、怎么实现中文、图片、视频验证码

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!