php如何创建简单验证码

小云云
发布: 2018-03-26 13:27:46
原创
2378人浏览过

本文主要和大家分享php如何创建简单验证码的代码,希望能帮助到大家。

一、创建一个验证码输出文件


session_start();

//5.创建一个验证码
$code_length = 4;
$codes = '';

for($i=0;$i<$code_length;$i++)
{
    $codes .= dechex(mt_rand(0,15));
}

//7.生成sesstion
$_SESSION['code'] = $codes;

$width = 75;
$height = 25;

//1. 创建一张图片
$img = imagecreatetruecolor($width,$height);

//4. 创建图片静态内容
//白色
$white = imagecolorallocate($img, 255, 255, 255);
//黑色
$black = imagecolorallocate($img, 100, 100, 100);
//红色
$red = imagecolorallocate($img, 255, 0, 0);

//图片背景
imagefill($img, 0, 0, $white);


//随机线条
for($i=0;$i<4;$i++)
{
    //创建随机颜色
    $img_mt_color = imagecolorallocate($img, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255));

    //画线
    imageline($img, mt_rand(0,$width),mt_rand(0,$height), mt_rand(0,$width),mt_rand(0,$height), $img_mt_color);
}

//随机打雪花
for($i=0;$i<100;$i++)
{
    //创建随机浅淡色
    $img_mt_color = imagecolorallocate($img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));

    //画*
    imagestring($img,1, mt_rand(0,$width),mt_rand(0,$height),'*',$img_mt_color);
}

//imagestring($img, 3, 10, 10, strlen($codes), $red);


//6.绘制验证码
for($i=0;$i<$code_length;$i++)
{
    //创建验证码颜色(偏深色)
    $img_mt_color = imagecolorallocate($img, mt_rand(0,100), mt_rand(0,150), mt_rand(0,200));
    //生成验证码每一位字符
    imagestring($img, mt_rand(3,5), $i*$width/4 + mt_rand(0,10), mt_rand(1,$height/2), $_SESSION['code'][$i], $img_mt_color);
}

//创建红色矩形边框
imagerectangle($img, 0, 0, $width-1, $height-1, $red);

//2. 让浏览器知道输出的是一张图片
header('Content-type:image/png');
//3. 输出
imagepng($img);
//4. 销毁
imagedestroy($img);
登录后复制


二、在另一个页面调用这个验证码,并且实现点击刷新验证码:



@@##@@

<script type="text/javascript">
(function(){
    var myCodeImg = document.getElementById_x('myCodeImg');
    myCodeImg.onclick = function()
    {
        this.src = './php_code_img.php?mt='+Math.ceil(Math.random()*1000);
    }
})();
</script>
登录后复制

相关推荐:

利用PHP绘图函数实现简单验证码功能的方法_php实例

php实现简单验证码

基于PHP生成简单的验证码,PHP生成简单验证码_PHP教程

php如何创建简单验证码

以上就是php如何创建简单验证码的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
相关标签:
php
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号