php 数学运算验证码实现代码


Posted in PHP onOctober 11, 2009
<?php 
//------------------------------------- 
// 文件说明:数学运算验证码 
// 文件作者:Jesse Lee 
// 最后更新:2008-09-07 
//------------------------------------- session_start(); 
$sessionvar = 'vdcode'; //Session变量名称 
$width = 150; //图像宽度 
$height = 20; //图像高度 
$operator = '+-*'; //运算符 
$code = array(); 
$code[] = mt_rand(1,9); 
$code[] = $operator{mt_rand(0,2)}; 
$code[] = mt_rand(1,9); 
$code[] = $operator{mt_rand(0,2)}; 
$code[] = mt_rand(1,9); 
$codestr = implode('',$code); 
eval("\$result = ".implode('',$code).";"); 
$code[] = '='; 
$_SESSION[$sessionvar] = $result; 
$img = ImageCreate($width,$height); 
ImageColorAllocate($img, mt_rand(230,250), mt_rand(230,250), mt_rand(230,250)); 
$color = ImageColorAllocate($img, 0, 0, 0); 
$offset = 0; 
foreach ($code as $char) { 
$offset += 20; 
$txtcolor = ImageColorAllocate($img, mt_rand(0,255), mt_rand(0,150), mt_rand(0,255)); 
ImageChar($img, mt_rand(3,5), $offset, mt_rand(1,5), $char, $txtcolor); 
} 
for ($i=0; $i<100; $i++) { 
$pxcolor = ImageColorAllocate($img, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255)); 
ImageSetPixel($img, mt_rand(0,$width), mt_rand(0,$height), $pxcolor); 
} 
header('Content-type: image/png'); 
ImagePng($img); 
?>
PHP 相关文章推荐
基于mysql的论坛(7)
Oct 09 PHP
用PHP动态生成虚拟现实VRML网页
Oct 09 PHP
php 处理上百万条的数据库如何提高处理查询速度
Feb 08 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
Apr 07 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
May 07 PHP
PHP5权威编程阅读学习笔记 附电子书下载
Jul 05 PHP
大家在抢红包,程序员在研究红包算法
Aug 31 PHP
php+ajax实现无刷新分页
Nov 18 PHP
深入浅析yii2-gii自定义模板的方法
Apr 26 PHP
PHP处理数组和XML之间的互相转换
Jun 02 PHP
PHP实现QQ登录的开原理和实现过程
Feb 04 PHP
Laravel框架实现利用中间件进行操作日志记录功能
Jun 06 PHP
用mysql触发器自动更新memcache的实现代码
Oct 11 #PHP
基于OpenCV的PHP图像人脸识别技术
Oct 11 #PHP
PHP 身份验证方面的函数
Oct 11 #PHP
使用zend studio for eclipse不能激活代码提示功能的解决办法
Oct 11 #PHP
关于页面优化和伪静态
Oct 11 #PHP
PHP iconv 函数转gb2312的bug解决方法
Oct 11 #PHP
Ha0k 0.3 PHP 网页木马修改版
Oct 11 #PHP
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
PHP 设置MySQL连接字符集的方法
2011/01/02 PHP
详解php中反射的应用
2016/03/15 PHP
PHP定时任务获取微信access_token的方法
2016/10/10 PHP
jquery.alert 弹出式复选框实现代码
2009/06/15 Javascript
Riot.js 快速的JavaScript单元测试框架
2009/11/09 Javascript
js replace 与replaceall实例用法详解
2013/08/03 Javascript
网页运行时提示对象不支持abigimage属性或方法
2014/08/10 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
JavaScript+html5 canvas实现图片破碎重组动画特效
2016/02/22 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
Javascript 实现简单计算器实例代码
2016/10/23 Javascript
解决给dom元素绑定click等事件无效问题的方法
2017/02/17 Javascript
JS全角与半角转化实例(分享)
2017/07/04 Javascript
angularjs1.5 组件内用函数向外传值的实例
2018/09/30 Javascript
解决angularjs service中依赖注入$scope报错的问题
2018/10/02 Javascript
小程序红包雨的实现示例
2019/02/19 Javascript
node.js使用express框架进行文件上传详解
2019/03/03 Javascript
浅谈vue项目用到的mock数据接口的两种方式
2019/10/09 Javascript
vue 获取到数据但却渲染不到页面上的解决方法
2020/11/19 Vue.js
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
Python实现数据库编程方法详解
2015/06/09 Python
python中的格式化输出用法总结
2016/07/28 Python
python修改list中所有元素类型的三种方法
2018/04/09 Python
tensorflow 加载部分变量的实例讲解
2018/07/27 Python
Python 使用 environs 库定义环境变量的方法
2020/02/25 Python
Python Selenium异常处理的实例分析
2021/02/28 Python
考试不及格检讨书
2014/01/09 职场文书
五年级学生评语
2014/04/22 职场文书
党的群众路线教育实践活动个人整改落实情况汇报
2014/10/28 职场文书
2014年企业员工工作总结
2014/12/09 职场文书
师德师风学习材料
2014/12/19 职场文书
将Python代码打包成.exe可执行文件的完整步骤
2021/05/12 Python
springboot拦截器无法注入redisTemplate的解决方法
2021/06/27 Java/Android
总结高并发下Nginx性能如何优化
2021/11/01 Servers
CSS使用伪类控制边框长度的方法
2022/01/18 HTML / CSS