PHP生成图片验证码、点击切换实例


Posted in PHP onJune 25, 2014

这里来看下效果: PHP生成图片验证码、点击切换实例

现在让我们来看下 PHP 代码

<?php

 

session_start();

function random($len) {

    $srcstr = "1a2s3d4f5g6hj8k9qwertyupzxcvbnm";

    mt_srand();

    $strs = "";

    for ($i = 0; $i < $len; $i++) {

        $strs .= $srcstr[mt_rand(0, 30)];

    }

    return $strs;

}

 

//随机生成的字符串

$str = random(4); 

 

//验证码图片的宽度

$width  = 50;      

 

//验证码图片的高度

$height = 25;     

 

//声明需要创建的图层的图片格式

@ header("Content-Type:image/png");

 

//创建一个图层

$im = imagecreate($width, $height);

 

//背景色

$back = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);

 

//模糊点颜色

$pix  = imagecolorallocate($im, 187, 230, 247);

 

//字体色

$font = imagecolorallocate($im, 41, 163, 238);

 

//绘模糊作用的点

mt_srand();

for ($i = 0; $i < 1000; $i++) {

    imagesetpixel($im, mt_rand(0, $width), mt_rand(0, $height), $pix);

}

 

//输出字符

imagestring($im, 5, 7, 5, $str, $font);

 

//输出矩形

imagerectangle($im, 0, 0, $width -1, $height -1, $font);

 

//输出图片

imagepng($im);

 

imagedestroy($im);

 

$str = md5($str);

 

//选择 cookie

//SetCookie("verification", $str, time() + 7200, "/");

 

//选择 Session

$_SESSION["verification"] = $str;

?>

接下来只要在页面中调用就可以了:

<img id="checkpic" onclick="changing();" src='/images/checkcode.php' />

如果想实现 "看不清?换一张" 效果,添加如下 JS 到页面中

function changing(){

    document.getElementById('checkpic').src="/images/checkcode.php?"+Math.random();

}
PHP 相关文章推荐
一个php作的文本留言本的例子(一)
Oct 09 PHP
php设计模式 Strategy(策略模式)
Jun 26 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
May 28 PHP
PHP实现克鲁斯卡尔算法实例解析
Aug 22 PHP
php画图实例
Nov 05 PHP
php判断输入是否是纯数字,英文,汉字的方法
Mar 05 PHP
php实现每天自动变换随机问候语的方法
May 12 PHP
php实现的一段简单概率相关代码
May 30 PHP
PHP学习笔记之php文件操作
Jun 03 PHP
PHP对象的浅复制与深复制的实例详解
Oct 26 PHP
php设计模式之策略模式应用案例详解
Jun 17 PHP
Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境
Mar 29 PHP
PHP生成随机密码类分享
Jun 25 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十二)
Jun 25 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十一)
Jun 25 #PHP
JavaScript创建命名空间的5种写法
Jun 24 #PHP
PHP获取windows登录用户名的方法
Jun 24 #PHP
PHP获取MySql新增记录ID值的3种方法
Jun 24 #PHP
PHP判断表单复选框选中状态完整例子
Jun 24 #PHP
You might like
记录mysql性能查询过程的使用方法
2013/05/02 PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
2013/07/05 PHP
php生成与读取excel文件
2016/10/14 PHP
php版微信小店调用api示例代码
2016/11/12 PHP
Mootools 1.2教程 输入过滤第一部分(数字)
2009/09/15 Javascript
JQuery小知识
2010/10/15 Javascript
jquery一句话全选/取消全选
2011/03/01 Javascript
alert出数组中的随即值代码
2014/09/25 Javascript
jquery.validate使用时遇到的问题
2015/05/25 Javascript
Node.js 应用跑得更快 10 个技巧
2016/04/03 Javascript
javascript代码调试之console.log 用法图文详解
2016/09/30 Javascript
原生js实现打字动画游戏
2017/02/04 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
JS库 Highlightjs 添加代码行号的实现代码
2017/09/13 Javascript
javascript  删除select中的所有option的实例
2017/09/17 Javascript
解决Angular2 router.navigate刷新页面的问题
2018/08/31 Javascript
详解如何在Angular优雅编写HTTP请求
2018/12/05 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
Django中几种重定向方法
2015/04/28 Python
在Python程序中操作文件之isatty()方法的使用教程
2015/05/24 Python
Python从MP3文件获取id3的方法
2015/06/15 Python
JS设计模式之责任链模式实例详解
2018/02/03 Python
利用python如何处理nc数据详解
2018/05/23 Python
python 以16进制打印输出的方法
2018/07/09 Python
Python Opencv实现图像轮廓识别功能
2020/03/23 Python
Python实现个人微信号自动监控告警的示例
2019/07/03 Python
python 实现控制鼠标键盘
2020/11/27 Python
德购商城:德国进口直邮商城
2017/06/13 全球购物
英国的屈臣氏:Boots博姿
2017/12/23 全球购物
波兰在线运动商店:YesSport
2020/07/23 全球购物
季度思想汇报
2014/01/01 职场文书
2014年3.15团委活动总结
2014/03/16 职场文书
大连星海广场导游词
2015/02/10 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
观看《信仰》心得体会
2016/01/15 职场文书
详解mysql三值逻辑与NULL
2021/05/19 MySQL