`

PHP学习(17)图片验证码的制作

    博客分类:
  • php
PHP 
阅读更多
1.php(数字,英文)

<?php
//创建随机数
session_start();//开启session

for($i=0;$i<4;$i++){
$rand.= dechex(rand(1,15));
}
$_SESSION[check_pic] = $rand;
//创建图片
$im = imagecreatetruecolor(100,30);
//设置颜色
$bg = imagecolorallocate($im,0,0,0);//第一次用调色板的时候,背景颜色
$tz = imagecolorallocate($im,255,255,255);//字体颜色
//循环线条
for($i=0;$i<3;$i++){
$t = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));//字体颜色
imageline($im,0,rand(0,25),100,rand(0,25),$t);//画线函数
}
//循环点
for($i=0;$i<200;$i++){
$z = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im,rand()0,rand()0,$z);//画点函数
}
//输出中文
//$str = iconv("gbk","UTF-8","安鹏!");//编码转换
//imagettftext($im,12,0,20,20,$tz,'simhei.ttf',$str);//函数调用字体写入文字
//把字符串写在图像左下角
imagestring($im,rand(1,6),rand(3,70),rand(1,15),$rand,$tz);
//输出图像
header ("Content-type: image/jpeg");
imagegif($im);
?>



2.php(中文)

<?php
//创建随机数
session_start();//开启session

for($i=0;$i<4;$i++){
$rand.= dechex(rand(1,15));
}
$_SESSION[check_pic] = $rand;
//创建图片
$im = imagecreatetruecolor(100,30);
//设置颜色
$bg = imagecolorallocate($im,0,0,0);//第一次用调色板的时候,背景颜色
$tz = imagecolorallocate($im,255,255,255);//字体颜色
//循环线条
for($i=0;$i<3;$i++){
$t = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));//字体颜色
imageline($im,0,rand(0,25),100,rand(0,25),$t);//画线函数
}
//循环点
for($i=0;$i<200;$i++){
$z = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im,rand()0,rand()0,$z);//画点函数
}
//输出中文
$str = iconv("gbk","UTF-8","安鹏!");//编码转换
imagettftext($im,12,0,20,20,$tz,'simhei.ttf',$str);//函数调用字体写入文字
//把字符串写在图像左下角
//imagestring($im,rand(1,6),rand(3,70),rand(1,15),$rand,$tz);
//输出图像
header ("Content-type: image/jpeg");
imagegif($im);
?>

3.php(判断)

<?
session_start();


if($_SESSION[check_pic]){
if($_POST[check] == $_SESSION[check_pic]){
  echo "验证码正确".$_SESSION[check_pic];
}else{
  echo "验证码错误".$_SESSION[check_pic];
}
}
?>
<form action="" method="post">
<img id="inChkCode" src="1.php" alt="点此刷新" style="cursor:pointer;" onclick='javascript:this.src="1.php?rnd="+Math.random();'>  br />
<input type="text" name="check"><br>
<input type="submit" value="提交">

</form>
分享到:
评论

相关推荐

    PHP100视频教程 33:PHP5中图片验证码的制作(上)

     2、部分GD库函数的介绍 imagecreatetruecolor 新建一个真彩色图像 imagecolorallocate 为一幅图像分配颜色(调色板) imagestring 绘图函数3、学习:随机函数,十六进制函数4、GD+SESSION制作PHP验证码 生成...

    validpic.zip_验证码 学习

    256色BMP图片验证码识别脚本,php编程学习源码,web网页制作参考资料。

    PHP图片验证码制作实现分享(全)

    最近正在学习php入门,现在刚入门,所以许多都不知道,就从最基础的学起,不会的上网查,然后把它记在这个法宝内

    PHP100视频教程全集112集BT种子【PHP经典】

    PHP100视频教程33:PHP5中图片验证码的制作(上) PHP100视频教程34:PHP5中图片中文验证码(下) PHP100视频教程35:PHP5文字图片混合水印与缩略图 PHP100视频教程36:PHP中正则表达式学习及应用(一) PHP100...

    php课程(共100多节)

    33:PHP5中图片验证码的制作(上) 34:PHP5中图片中文验证码(下) 35:PHP5文字图片混合水印与缩略图 36:PHP中正则表达式学习及应用(一) 37:PHP中正则表达式学习及应用(二) 38:PHP中正则表达式学习及应用...

    深入学习.net验证码生成及使用方法

    主要介绍了.net验证码生成及使用方法,先了解验证码是什么以及其作用,最后分享了如何制作验证码,内容很全面,感兴趣的小伙伴们可以参考一下

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例062 图片验证码 93 实例063 健康生活提醒 95 2.5 循环控制 96 实例064 员工生日列表 96 实例065 员工详细信息浏览 97 实例066 员工信息的批量删除 98 实例067 表格的动态创建 99 实例068 SESSION购物车中数据的...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例062 图片验证码 93 实例063 健康生活提醒 95 2.5 循环控制 96 实例064 员工生日列表 96 实例065 员工详细信息浏览 97 实例066 员工信息的批量删除 98 实例067 表格的动态创建 99 实例068 SESSION购物车中数据的...

    星光贴吧-免费开源轻巧高效的社区留言系统 1.3.rar

    速度一流,模板标签使用方便,易于学习及制作模板,全站整合众多ajax应用,用户体验更加友好,强大的后台管理功能,即使你是个新手,也很容易的使用星光贴吧。 星光贴吧v1.3更新说明 1、增加数据库备份还原功能 2...

    W3C联盟系统-PHP

    W3C联盟系统是一个收集展现web技术教程等系统,完美的展现给用户最好的简单学习一的一面,布局等优化借鉴了菜鸟教程的精华,在线调试预览 用户体验放到第一位,非常符合当代站长的阅读学习等,主要使用功能等在详细...

    JAVA上百实例源码以及开源项目源代码

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...

    W3C联盟系统 v1.3

    W3C联盟系统是一个收集展现web技术教程等系统,完美的展现给用户最好的简单学习一的一面,布局等优化借鉴了菜鸟教程的精华,在线调试预览 用户体验放到第一位,非常符合当代站长的阅读学习等,主要使用功能等在详细...

    香菇贴吧系统 3.1.0

    速度快,模板标签使用方便,易于学习及制作模板,强大的后台管理功能,即使你是个新手,也很容易的使用香菇贴吧。 香菇贴吧 3.1.0 更新记录: 1、太多,不一一描述 香菇贴吧主要功能介绍: #支持无限分类及...

    JAVA上百实例源码以及开源项目

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...

Global site tag (gtag.js) - Google Analytics