php验证码--图片
这里我们介绍图片验证码的制作,有关字符验证码能够參考下面文章:
图片验证码的制作分三步:
1.制作图片库
2.随机选取一张图片
3.输出图片内容
代码例如以下(这里为了方便我直接用的本地的图片,实际中会有大量图片。路径存放在数据库中):
<?php
session_start();
$data = array(
dirname(__FILE__).'\pics\pic0.jpg'=>'狗',
dirname(__FILE__).'\pics\pic1.jpg'=>'猫',
dirname(__FILE__).'\pics\pic2.jpg'=>'鱼',
dirname(__FILE__).'\pics\pic3.jpg'=>'猪',
dirname(__FILE__).'\pics\pic4.jpg'=>'马',
dirname(__FILE__).'\pics\pic5.jpg'=>'驴',
dirname(__FILE__).'\pics\pic6.jpg'=>'鸟',
dirname(__FILE__).'\pics\pic7.jpg'=>'鸡',
dirname(__FILE__).'\pics\pic8.jpg'=>'鸭',
dirname(__FILE__).'\pics\pic9.jpg'=>'象',
); $rnd = rand(0,9);
$img = dirname(__FILE__).'\pics\pic'.$rnd.'.jpg'; $_SESSION['authcode'] = $data[$img]; $content = file_get_contents($img);
header("content-type: image/png");
echo $content;
client:
<?php
if(isset($_REQUEST['authcode'])){
session_start();
if(($_REQUEST['authcode']) == $_SESSION['authcode']){
echo '<font color="#0000cc">输入正确</font>';
}else{
echo '<font color="#cc0000"><b>输入错误</b></font>';
}
exit();
} ? > <!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form method="post" action="./form.php">
<p>
验证码图片:<img id="captch_code" border="1" src="./captcha_img.php?r=<?php echo rand();?>" witdh="100px" />
<a href="javascript:void(0)" onclick="document.getElementById('captch_code').src='./captcha_img.php?r='+Math.random()">换一个</a>
</p>
<p>图片内容:<input type="text" name="authcode" value="" /> </p>
<p><input type="submit" value="提交" style="padding:6px 20px;"></p>
</form>
</body>
</html>
结果图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
php验证码--图片的更多相关文章
- Struts2 验证码图片实例
本文转载于DongLiYang的博客http://www.cnblogs.com/dongliyang/archive/2012/08/24/2654431.html 其中修改过一部分,针对使用注解而 ...
- java web学习总结(九) -------------------通过Servlet生成验证码图片
一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedImage类,如下:
- android 生成验证码图片
(转自:http://blog.csdn.net/onlyonecoder/article/details/8231373) package com.nobeg.util; import java.u ...
- delphi WebBrowser控件上网页验证码图片识别教程(一)
步骤一:获取网页中验证码图片的url地址 在delphi中加入一个BitBtn和一个memo以及WebBrowser控件实现网页中验证码图片的url地址的获取 程序如下:procedure TForm ...
- 学习笔记:利用GDI+生成简单的验证码图片
学习笔记:利用GDI+生成简单的验证码图片 /// <summary> /// 单击图片时切换图片 /// </summary> /// <param name=&quo ...
- JavaWeb---总结(九)通过Servlet生成验证码图片
一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedImage类,如下: 创建一个DrawImage Servlet,用来生成验证码图片 1 package gacl. ...
- Java 生成验证码图片
生成验证码图片并对提交的输入进行验证 // HttpServletResponse常见应用——生成验证码 // 利用BufferedImage类生产随机图片 public static final i ...
- javaweb学习总结(九)—— 通过Servlet生成验证码图片
一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedImage类,如下:
- 012. asp.net生成验证码图片(汉字示例/字母+数字)
protected void Page_Load(object sender, EventArgs e) { //生成验证码图片的基本步骤 string checkCode = "新年快乐& ...
- 验证码图片生成工具类——Captcha.java
验证码图片生成工具,使用JAVA生成的图片验证码,调用getRandcode方法获取图片验证码,以流的方式传输到前端页面. 源码如下:(点击下载 Captcha.java) import java. ...
随机推荐
- 记一次CPU占用率和load高的排查
前不久公司进行了一次大促,晚上值班.大促是从晚上8点多开始的,一开始流量慢慢的进来,观察了应用的各项指标,一切都是正常的,因为这是双11过后的第一次大促,想着用户的购买欲应该不会太强,所以我们的运维同 ...
- Codeforces 862B (二分图染色)
<题目链接> 题目大意: 给出一个有n个点的二分图和n-1条边,问现在最多可以添加多少条边使得这个图中不存在自环,重边,并且此图还是一个二分图. 解题分析: 此题不难想到,假设二分图点集数 ...
- jupyter notebook connecting to kernel problem
前几天帮同学配置 python 和 anaconda 环境,在装 jupyter notebook 时,出了点问题,搞了一天半终于搞好了,也是在 github 里找到了这个问题的解答. 当时显示的是无 ...
- Emit学习笔记
1,给字段设置值,并返回 static void Main(string[] args) { //给字段设置值,并返回 AssemblyName assemblyName = new Assembly ...
- SQL 查询 技巧
一.使用SELECT检索数据 数据查询是SQL语言的中心内容,SELECT 语句的作用是让数据库服务器根据客户要求检索出所需要的信息资料,并按照规定的格式进行整理,返回给客户端. SELECT 语句的 ...
- vue中的dom指令控制
一.条件控制指令1.v-if,条件渲染 <div id="J_app"> <p v-if="show">显示该标签</p> ...
- DataGridView控件-[引用]
DataGridView控件 DataGridView是用于Windows Froms 2.0的新网格控件.它可以取代先前版本中DataGrid控件,它易于使用并高度可定制,支持很多我们的用户需要的特 ...
- 命令行方式删除文件 && 文件夹
del File: 删除文件 rmdir Folder : 删除文件夹 [貌似只能删除空目录] rm -rf Folder: 删除非空文件夹 [用windows自带的cmd提示我“rm”不是内部命令 ...
- linux 配置sendmail支持php mail 函数
参考自:http://blog.csdn.net/shiningstarpxx/article/details/41008325 http://blog.sina.com.cn/s/blog_65c8 ...
- xtrabackup备份MySQL并主从同步
为什么要使用xtarbackup? mysqldump备份数据库的时候,会锁库锁表,导致业务服务的暂时停滞,数据库数量小还没有感觉,当数据超过几个G的时候,使用mysqldump会严重影响服务器性能, ...