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 相关文章推荐
require(),include(),require_once()和include_once()区别
Mar 27 PHP
PHP+ACCESS 文章管理程序代码
Jun 21 PHP
新浪微博API开发简介之用户授权(PHP基础篇)
Sep 25 PHP
PHP数据类型之布尔型的介绍
Apr 28 PHP
php获取网页里所有图片并存入数组的方法
Apr 06 PHP
CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法
Jun 17 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
Jan 11 PHP
Zend Framework实现留言本分页功能(附demo源码下载)
Mar 22 PHP
php微信开发之带参数二维码的使用
Aug 03 PHP
PHP 等比例缩放图片详解及实例代码
Sep 18 PHP
ZendFramework框架实现连接两个或多个数据库的方法
Dec 08 PHP
利用Homestead快速运行一个Laravel项目的方法详解
Nov 14 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
一个ftp类(ini.php)
2006/10/09 PHP
PHP读取XML值的代码(推荐)
2011/01/01 PHP
php的大小写敏感问题整理
2011/12/29 PHP
php中的路径问题与set_include_path使用介绍
2014/02/11 PHP
php二维码生成
2015/10/19 PHP
php中static 静态变量和普通变量的区别
2016/12/01 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
JavaScript 基础知识 被自己遗忘的
2009/10/15 Javascript
更换select下拉菜单背景样式的实现代码
2011/12/20 Javascript
jQuery UI 实现email输入提示实例
2013/08/15 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
浅析js中substring和substr的方法
2015/11/09 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
Bootstrap实现提示框和弹出框效果
2017/01/11 Javascript
BootstrapValidator实现注册校验和登录错误提示效果
2017/03/10 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
ES6深入理解之“let”能替代”var“吗?
2017/06/28 Javascript
Puppeteer环境搭建的详细步骤
2018/09/21 Javascript
如何提升vue.js中大型数据的性能
2019/06/21 Javascript
element form 校验数组每一项实例代码
2019/10/10 Javascript
es6数组的flat(),flatMap()函数用法实例分析
2020/04/18 Javascript
Python实现的tab文件操作类分享
2014/11/20 Python
python实现数组插入新元素的方法
2015/05/22 Python
python 写函数在一定条件下需要调用自身时的写法说明
2020/06/01 Python
python用分数表示矩阵的方法实例
2021/01/11 Python
惠普加拿大在线商店:HP加拿大
2017/09/15 全球购物
澳大利亚最好的在线时尚精品店:Princess Polly
2018/01/03 全球购物
数据库连接池的工作原理
2012/09/26 面试题
会计实习生自我鉴定
2013/12/12 职场文书
解除聘用合同证明书范本
2014/09/11 职场文书
婚前财产协议书范本
2014/10/19 职场文书
销售经理工作检讨书
2015/02/19 职场文书
2015高考寄语集锦
2015/02/27 职场文书
政府会议通知范文
2015/04/15 职场文书
2015学校图书管理员工作总结
2015/05/11 职场文书
Nginx中使用Lua脚本与图片的缩略图处理的实现
2022/03/18 Servers