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 相关文章推荐
删除无限级目录与文件代码共享
Jul 12 PHP
动态网站web开发 PHP、ASP还是ASP.NET
Oct 09 PHP
php循环检测目录是否存在并创建(循环创建目录)
Jan 06 PHP
开启CURL扩展,让服务器支持PHP curl函数(远程采集)
Mar 19 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
Aug 09 PHP
windwos下使用php连接oracle数据库的过程分享
May 26 PHP
如何让thinkphp在模型中自动完成session赋值小教程
Sep 05 PHP
PHP实现设计模式中的抽象工厂模式详解
Oct 11 PHP
8个PHP数组面试题
Jun 23 PHP
PHP实现伪静态方法汇总
Jan 13 PHP
YII框架批量插入数据的方法
Mar 18 PHP
php操作redis数据库常见方法实例总结
Feb 20 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
Windows下安装Memcached的步骤说明
2010/04/25 PHP
php笔记之:有规律大文件的读取与写入的分析
2013/04/26 PHP
PHP使用file_get_content设置头信息的方法
2016/02/14 PHP
关于Laravel Route重定向的一个注意点
2017/01/16 PHP
thinkPHP5.0框架安装教程
2017/03/25 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
2020/08/11 PHP
use jscript Create a SQL Server database
2007/06/16 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
jCallout 轻松实现气泡提示功能
2013/09/22 Javascript
优化Jquery,提升网页加载速度
2013/11/14 Javascript
form表单action提交的js部分与html部分
2014/01/07 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
JavaScript实现form表单的多文件上传
2020/03/27 Javascript
微信小程序表单验证错误提示效果
2017/05/19 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
在Vue项目中使用d3.js的实例代码
2018/05/01 Javascript
Angular网络请求的封装方法
2018/05/22 Javascript
Node.js log4js日志管理详解
2018/07/31 Javascript
Js代码中的span拼接问题解决
2019/11/22 Javascript
javascript实现时间日期的格式化的方法汇总
2020/08/06 Javascript
Vue多选列表组件深入详解
2021/03/02 Vue.js
Python实现简单的多任务mysql转xml的方法
2017/02/08 Python
python使用Matplotlib画条形图
2020/03/25 Python
python爬取内容存入Excel实例
2019/02/20 Python
给大家整理了19个pythonic的编程习惯(小结)
2019/09/25 Python
python文件和文件夹复制函数
2020/02/07 Python
PyQt5连接MySQL及QMYSQL driver not loaded错误解决
2020/04/29 Python
python 实现批量图片识别并翻译
2020/11/02 Python
如何用Java判断一个文件或目录是否存在
2012/11/19 面试题
高一数学教学反思
2014/02/07 职场文书
幼儿园万圣节活动总结
2015/05/05 职场文书
百年校庆感言
2015/08/01 职场文书
关于运动会的广播稿
2015/08/19 职场文书
25句企业管理语录:助你迅速打开思路,句句经典!
2020/01/14 职场文书
Navicat for MySQL的使用教程详解
2021/05/27 MySQL
go语言使用Casbin实现角色的权限控制
2021/06/26 Golang