使用php生成动态的验证码图片

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>GETTING STARTED WITH BRACKETS</title>
<style>
img{vertical-align: bottom;}
</style>
</head>
<body>
<h2>PHP中的函数</h2>
<?php
function add($a,$b){
$sum = 0;
$sum = $a+$b;
return $sum;
}
echo add(1,2);
?>
<hr/>
<?php
$s = 'abc';
echo $s[1];//b
?>
<h2>使用PHP生成动态的验证码图片</h2>
<?php ?>
<hr/>
<h2>用户登录</h2>
用5-1.php语言脚本生成我需要的图片,是服务器端动图生成的图片
验证码:<input/><img src="5-1.php"/>
</body>
</html>

index.php

<?php
//注意,此文件是要向客户端输出一副动态生成的图片,所以,前前后后不能有任何的字符输出 //告诉客户端,本页面输出的内容类型,是一个图片
header('Content-Type','image/png');
$w = 100;
$h = 30; //在服务器的内存中创建一副真彩色图片
$img = imagecreatetruecolor($w,$h); //分配一个即将使用的颜色(固定颜色)
// $c=imagecolorallocate($img,255,0,0);//红色 //分配一个即将使用的颜色(随机颜色)
$c=imagecolorallocate($img,rand(150,230),rand(150,230),rand(150,230)); //在图片上画一个矩形,作为背景色
imagefilledrectangle($img,0,0,$w,$h,$c); //生成四个随机的字符
$src = 'ABCDEFGHIJKLMNPQRSTUVXWYZ23456789';//除去字母O和数字0,1,容易混淆
$txt = $src[rand(0,strlen($src))];
$txt .= $src[rand(0,strlen($src))];
$txt .= $src[rand(0,strlen($src))];
$txt .= $src[rand(0,strlen($src))]; //再重新分配一个颜色
$c=imagecolorallocate($img,rand(150,230),rand(150,230),rand(150,230)); //把字符串刷到图片上
imagestring($img,20,30,8,$txt,$c); //向客户端输出图片中的二进制数据
imagepng($img); //从服务器端的内存中删除创建的图片
imagedestroy($img);
?>

1.2_php验证码的更多相关文章

  1. .net点选验证码实现思路分享

    哈哈好久没冒泡了,最进看见点选验证码有点意思,所以想自己写一个. 先上效果图 如果你被这个效果吸引了就请继续看下去. 贴代码前先说点思路: 1.要有一个汉字库,并按字形分类.(我在数据库里是安部首分类 ...

  2. 【探索】无形验证码 —— PoW 算力验证

    先来思考一个问题:如何写一个能消耗对方时间的程序? 消耗时间还不简单,休眠一下就可以了: Sleep(1000) 这确实消耗了时间,但并没有消耗 CPU.如果对方开了变速齿轮,这瞬间就能完成. 不过要 ...

  3. TODO:Laravel增加验证码

    TODO:Laravel增加验证码1. 先聊聊验证码是什么,有什么作用?验证码(CAPTCHA)是"Completely Automated Public Turing test to te ...

  4. PHP-解析验证码类--学习笔记

    1.开始 在 网上看到使用PHP写的ValidateCode生成验证码码类,感觉不错,特拿来分析学习一下. 2.类图 3.验证码类部分代码 3.1  定义变量 //随机因子 private $char ...

  5. 随手记_C#验证码

    前言 最近在网上偶然看见一个验证码,觉得很有意思,于是搜了下,是使用第三方实现的,先看效果: 总体来说效果还是可以的,官方提供的SDK也比较详细,可配置性很高.在这里在简单啰嗦几句使用方式: 使用步骤 ...

  6. WPF做12306验证码点击效果

    一.效果 和12306是一样的,运行一张图上点击多个位置,横线以上和左边框还有有边框位置不允许点击,点击按钮输出坐标集合,也就是12306登陆的时候,需要向后台传递的参数. 二.实现思路 1.获取验证 ...

  7. 零OCR基础6行代码实现C#验证码识别

    这两天因为工作需要,要到某个网站采集信息,一是要模拟登陆,二是要破解验证码,本想用第三方付费打码,但是想想网上免费的代码也挺多的,于是乎准备从网上撸点代码下来,谁知道,撸了好多个都不行,本人以前也没接 ...

  8. ASP.NET中画图形验证码

    context.Response.ContentType = "image/jpeg"; //生成随机的中文验证码 string yzm = "人口手大小多少上中下男女天 ...

  9. asp.net mvc 验证码

    效果图 验证码类 namespace QJW.VerifyCode { //用法: //public FileContentResult CreateValidate() //{ // Validat ...

随机推荐

  1. Hacker - 世界上第一个黑客

    http://juliet.iteye.com/blog/176525凯文·米特尼克,1964年生于美国加州的洛杉矶. 13岁时他对电脑着了迷,掌握了丰富的计算机知识和高超的操作技能,但却因为用学校的 ...

  2. Linux命令-网络命令:setup

    setup 进入设置网络信息的界面 上图中选“网络配置”进入设置网络信息 上图中选“设备配置”进行配置IP地址,下图显示网卡信息 上图中,选择“eth0”回车进入设置eth0网卡信息界面 上图中选择“ ...

  3. Mac OS 下安装mysql环境

    传送门:Mac下安装与配置MySQL   mac 上怎么重置mysql的root的密码? 一.下载mysql 进入官方下载地址:https://www.mysql.com/downloads/ 1.找 ...

  4. Excel 출력

    NativeExcel 참조 사이트 http://www.nika-soft.com/dwnld.htm IWorkbook book = Factory.CreateWorkbook(); lWo ...

  5. 点滴积累【C#】---操作xml,将xml数据显示到treeview

    效果: 代码: XmlDocument xml = new XmlDocument(); private void Form1_Load(object sender, EventArgs e) { C ...

  6. Atitit php序列化 php的serialize序列化和json序列化

    Atitit php序列化 php的serialize序列化和json序列化 PHP 对不同类型的数据用不同的字母进行标示,Yahoo 开发网站提供的Using Serialized PHP with ...

  7. html页面中js判断浏览器是否是IE浏览器及IE浏览器版本

    HTML里: HTML代码中,在编写网页代码时,各种浏览器的兼容性是个必须考虑的问题,有些时候无法找到适合所有浏览器的写法,就只能写根据浏览器种类区别的代码,这时就要用到判断代码了.在HTML代码中, ...

  8. Yii2基础常用笔记

    表单验证规则写在model类里,例如: 通过表单输入的值给模型属性填充数据用模型对象的load方法. $model->load(Yii::$app->request->post())

  9. makefile之目录搜索&自动依赖

    目录搜索 在一个大工程中,一般会将源文件和中间生成文件放在不同的目录,而且不会污染源码所在的目录.当需要编译不同目录下的源文件时,就需要指定路径,那么怎样让路径的表示以及源文件的引用更加灵活.就要用到 ...

  10. lua 打印 table 拷贝table

    -- 打印table function print_lua_table (lua_table, indent) if lua_table == nil or type(lua_table) ~= &q ...