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 ignore_user_abort与register_shutdown_function 使用方法
Jun 14 PHP
使ecshop模板中可引用常量的实现方法
Jun 02 PHP
php 文件上传类代码
Aug 06 PHP
destoon官方标签大全
Jun 20 PHP
PHP彩蛋信息介绍和阻止泄漏的方法(隐藏功能)
Aug 06 PHP
php中通过DirectoryIterator删除整个目录的方法
Mar 13 PHP
Yii使用技巧大汇总
Dec 29 PHP
关于扩展 Laravel 默认 Session 中间件导致的 Session 写入失效问题分析
Jan 08 PHP
PHP创建多级目录的两种方法
Oct 28 PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
Feb 15 PHP
Laravel框架中Blade模板的用法示例
Aug 30 PHP
PHP大文件分割分片上传实现代码
Dec 09 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
解析PHP计算页面执行时间的实现代码
2013/06/18 PHP
CodeIgniter中使用cookie的三种方式详解
2014/07/18 PHP
phplot生成图片类用法详解
2015/01/06 PHP
windows7配置Nginx+php+mysql的详细教程
2016/09/04 PHP
jQuery EasyUI API 中文文档 - Panel面板
2011/09/30 Javascript
javascript之典型高阶函数应用介绍二
2013/01/10 Javascript
JQuery中attr方法和removeAttr方法用法实例
2015/05/18 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
2015/09/23 Javascript
深入理解js函数的作用域与this指向
2016/05/28 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
2016/10/01 Javascript
JS给Array添加是否包含字符串的简单方法
2016/10/29 Javascript
Vue2.0父子组件传递函数的教程详解
2017/10/16 Javascript
小程序如何支持使用 async/await详解
2019/09/12 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
js实现电灯开关效果
2021/01/19 Javascript
python字符串的常用操作方法小结
2016/05/21 Python
flask入门之表单的实现
2018/07/18 Python
浅谈python函数调用返回两个或多个变量的方法
2019/01/23 Python
python2 对excel表格操作完整示例
2020/02/23 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
Python+OpenCV图像处理——实现直线检测
2020/10/23 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
Django中的DateTimeField和DateField实现
2021/02/24 Python
aden + anais英国官网:美国婴儿贴身用品品牌
2019/09/08 全球购物
PHP面试题-$message和$$message的区别
2015/12/08 面试题
《中彩那天》教学反思
2014/02/22 职场文书
工作鉴定评语
2014/05/04 职场文书
师德师风的心得体会
2014/09/02 职场文书
习近平在党的群众路线教育实践活动总结大会上的讲话全文
2014/10/25 职场文书
党员思想汇报材料
2014/12/19 职场文书
外贸业务员岗位职责
2015/02/13 职场文书
2015年全民国防教育日活动总结
2015/03/23 职场文书
教师学习中国梦心得体会
2016/01/05 职场文书
员工安全责任协议书
2016/03/22 职场文书
竞聘演讲报告:基本写作有哪些?附开头范文
2019/10/16 职场文书
Nginx+Tomcat实现负载均衡、动静分离的原理解析
2021/03/31 Servers