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 相关文章推荐
基于mysql的论坛(1)
Oct 09 PHP
粗略计算在线时间,bug:ip相同
Dec 09 PHP
php 远程关机操作的代码
Dec 05 PHP
PHP 截取字符串 分别适合GB2312和UTF8编码情况
Feb 12 PHP
提高PHP编程效率的53个要点(经验小结)
Sep 04 PHP
基于PHP开发中的安全防范知识详解
Jun 06 PHP
php中namespace use用法实例分析
Jan 22 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
Mar 21 PHP
在Laravel框架里实现发送邮件实例(邮箱验证)
May 20 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
PHP基于ICU扩展intl快速实现汉字转拼音及按拼音首字母分组排序的方法
May 03 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
Oct 18 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 expects parameter 1 to be resource, array given 错误
2011/03/23 PHP
php 中文字符串首字母的获取函数分享
2013/11/04 PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
2017/11/06 PHP
PHP的cookie与session原理及用法详解
2019/09/27 PHP
XAMPP升级PHP版本实现步骤解析
2020/09/04 PHP
javascript 可以拖动的DIV(二)
2009/06/26 Javascript
jquery实现按Enter键触发事件示例
2013/09/10 Javascript
jquery showModelDialog的使用方法示例详解
2013/11/19 Javascript
jquery操作cookie插件分享
2014/01/14 Javascript
详解jquery中$.ajax方法提交表单
2014/11/03 Javascript
JavaScript中使用concat()方法拼接字符串的教程
2015/06/06 Javascript
js为什么不能正确处理小数运算?
2015/12/29 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
JavaScript反弹动画效果的实现代码
2017/07/13 Javascript
解决Vue 浏览器后退无法触发beforeRouteLeave的问题
2017/12/24 Javascript
学习React中ref的两个demo示例
2018/08/14 Javascript
关于Vue源码vm.$watch()内部原理详解
2019/04/26 Javascript
vue组件中watch props根据v-if动态判断并挂载DOM的问题
2019/05/12 Javascript
教你搭建按需加载的Vue组件库(小结)
2019/07/29 Javascript
JS中自定义事件的使用与触发操作实例分析
2019/11/01 Javascript
node.js中对Event Loop事件循环的理解与应用实例分析
2020/02/14 Javascript
一行JavaScript代码如何实现瀑布流布局
2020/12/11 Javascript
python发送邮件接收邮件示例分享
2014/01/21 Python
Python json 错误xx is not JSON serializable解决办法
2017/03/15 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
2017/12/14 Python
python文本数据相似度的度量
2018/03/12 Python
python 常用的基础函数
2018/07/10 Python
Python绘制并保存指定大小图像的方法
2019/01/10 Python
基于Python安装pyecharts所遇的问题及解决方法
2019/08/12 Python
基于Python检测动态物体颜色过程解析
2019/12/04 Python
使用Python将语音转换为文本的方法
2020/08/10 Python
python代数式括号有效性检验示例代码
2020/10/04 Python
幼儿园招生广告
2014/03/19 职场文书
2015年车间主任工作总结
2015/05/21 职场文书
MySQL Shell的介绍以及安装
2021/04/24 MySQL