JSP彩色验证码生成有4个随机数字和杂乱背景的图片,数字和背景颜色会改变,服务器端刷新(用history.go(-1)也会变) 产生验证码图片的文件-----image.jsp <%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %> <%! Color getRandColor(int fc,int bc){//给定范围获得随机颜色 Random random = new Random(); if(fc>255) fc=255; if(bc>255) bc=255; int r=fc+random.nextInt(bc-fc); int g=fc+random.nextInt(bc-fc); int b=fc+random.nextInt(bc-fc); return new Color(r,g,b); } %> <% //设置页面不缓存 response.setHeader...
package test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ImageGenerator extends HttpServlet ...{ /** *//** * */ private static final long serialVersionUID = -3938318741402322164L; private static Color getRandColor(int fc, int bc) ...{ Random random = new Random(); if (fc &...
不像域级有效性检查(field-level validation),表单级有效性检查(form-level validation)将整个表单上的某组(或全部)值作为一个整体分析其一致性。表单级有效性检查一般发生在将一个已完成的HTML 表单提交给CGI 程序之前。我们这样做是为了确保用户在将数据发送至服务器之前,已经填写了所有的必填域。
验证整个表单其实相当简单。在我们的例子当中,我们已经去除了大部份会自动弹出即时警告信息的域级有效性检查。下面是一个例子:
function isANumber(number) {
answer = 1;
if (!parseFloat(number)) {
//the first digit wasn't numeric
answer = 0;
} else {
//the first digit was numeric, so check the res...
JSP彩色验证码生成有4个随机数字和杂乱背景的图片,数字和背景颜色会改变,服务器端刷新(用history.go(-1)也会变)
产生验证码图片的文件-----image.jsp
<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>
<%!
Color getRandColor(int fc,int bc){//给定范围获得随机颜色
Random random = new Random();
if(fc>255) fc=255;
&nbs...
package test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ImageGenerator extends HttpServlet ...{ /** *//** * */ private static&...
这个应用主要用在springside框架中的ajax用户注册验证,我这个菜鸟做的大家试试参考!!1页面jsp 的script代码: <script type="text/javascript"> var xmlHttp; function createXMLHttpRequest() { if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); &n...
我们针对验证码技术深入的了解图形编程在ASP.NET中的应用。
验证码技术是目前很多WEB程序采用的一种安全防御技术。系统在登录的时候不但要输出用户名和密码,还要额外输入一种随机生成的验证码文本,此时用户需要正确的输入这三个信息才能登录到系统中。
由于验证码技术能有效的抵御某些黑客攻击,因此得到相当广泛的应用,而且在一些C/S系统中也采用了这种源自WEB开发的技术。
验证码原理
在现在的软件运行环境下,安全成为大部分软件必须考虑的问题,黑客无处不在,攻击方式日益丰富,尤其是WEB系统由于其开放性更是遇到严峻的考验,黑客事件层出不穷,造成的损失和影响也不断变大,对此我们软件开发人员需要对...
在判断的时候只要把取得的文本框的值与“Session["valicode"] ”进行判断是否一致就行了。
//建立位图对象
Bitmap NewbitMap = new Bitmap(90, 22, PixelFormat.Format32bppArgb);
//根据上面创建的位置对象创建绘图面
Graphics g = Graphics.FromImage(NewbitMap);
//以指定的颜色填充矩形区
g.FillRectangle(new SolidBrush(Color.White), new Rectangle(0, 0, 90, 22));
//创建字体对象
Font newfont = new Font("幼圆", 14);
//创建RectangleF结构指定一个区域
RectangleF rectangle = new RectangleF(0, 0, 90, 22);
//创建随机数
Random Newrd = ne...
Quickstart Guide
In the desired position on your form, add the following code to display the CAPTCHA image:
<img id="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" />
Next, add the following HTML code to create a text input box:
<input type="text" name="captcha_code" size="10" maxlength="6" />
Note: You can change the maxlength and size properties to match your image settings.
The next step is optional, but can be useful to your users if they cannot re...
<?php
function UPCAbarcode($code) {
$lw = 2; $hi = 100;
$Lencode = array('0001101','0011001','0010011','0111101','0100011',
'0110001','0101111','0111011','0110111','0001011');
$Rencode = array('1110010','1100110','1101100','1000010','1011100',
'1001110','1010000','1000100','1001000','1110100');
$ends = '101'; $center = '01010';
/* UPC-A Must be 11 digits, we compute the checksum. */
if ( strlen($code) != 11 ) { die("UPC-A Must be 11 digits."); }
/* Compute the EAN-13 Checksum digit */
$ncode = '0'.$code;
$even = 0; $odd = 0;
for ($x=0;$x<12;$...
官方网站:http://www.phpcaptcha.org/
下载地址:http://www.phpcaptcha.org/download/
验证码图片:<img id="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" />
验证码文本框:<input type="text" name="captcha_code" size="10" maxlength="6" />
看不清验证码:<a href="#" rel="nofollow" target="_blank">Reload Image</a>
后端PHP验证:
<?php
session_start();
include_once $_SERVER['DOCUMENT_ROOT'] . '/securima...
//+-------------------------------------------------
//| 文件 validate_image.php
//| 预先在支持GD库的做好一些图片,推荐使用GIF格式,文件名与图片里
//| 面的里面的数字一致,将图片放入一个文件夹。设置CONFIG里面的数据.
//| 引用 <IMG SRC="{ filepath }/validate_image.php">
//| 验证页面对比
//| $_COOKIE['validate'] == md5($_POST['input'])
//|==================CONFIG START===================
$image_path="numimage";// 图片文件路径 后面没有'/'
$image_ext ="gif";// 图片文件扩展名
//===================CONFIG E...
Ajax是目前很时髦也很酷的一个技术,为此小弟也曾花上数月时间研究,并已成功运用到实际的项目中.感觉运用好的话确实能带来非常棒的用户体验,反之则会使你深陷在js代码的泥潭中,不但得不到预期的效果,代码也会变的臃肿丑陋,得不偿失.而登录验证很可能是你学Ajax时拿来练手的第一个或第二个例子,在这里小弟也贴一个本人初学Ajax时写的一段代码(已经重写,从SAJAX迁移到了prototype.js),希望能与志同道合之人共同学习、共同进步。 废话不说了,先贴代码:
<?php/************************************************************** * login.php * @author 风舞 * @email&n...
<?php//小猪会气功session_start();session_register('code');$width = "70";//图片宽$height = "25";//图片高$len = "4";//生成几位验证码$bgcolor = "#ffffff";//背景色$noise = true;//生成杂点$noisenum = 200;//杂点数量$border = false;//边框$bordercolor = "#000000";$image = imageCreate($width, $height);$back = getcolor($bgcolor);imageFilledRectangle($image, 0, 0, $width, $height, $back);$size = $width/$len;if($size>$height) $size=$height;$left = ($width-$len*($size+$size/10))/$size;for ($i=0; $i<$len; $i++){ $randtext = rand(0, 9); &...
PHP图片验证码原代码,需支持gd2.dll扩展,需修改PHP.ini后重启IIS or ap 调用方法<img src="this.php">
<?PHP session_start(); session_register('SafeCode'); $type = 'gif'; $width= 40; $height= 16; header("Content-type: image/".$type); srand((double)microtime()*1000000); $randval = randStr(4,""); if($type!='gif' && function_exists('imagecreatetruecolor')){ $im = @imagecreatetruecolor($width,$height); }else{ $im = @imagecreate($width,$height); } $r = Array(225,211,255,223); $g = Array(225,236,237,215); $b = Array(225,236,166,125); $key = rand(0,3); $backColor = I...
几个GD函数堆砌出来的玩意,只要搞定怎样把中文写到图片上就可以了,因为GD函数只接受UTF8格式编码的文字,所以在写文字前首先要进行编码转换。PHP自带的iconv和mbstring库都可以完成这项工作,但一般的虚拟主机很少支持,所以要自己写个,像这里用gb2utf8完成这项工作。当然如果你的页面就是以UTF8格式存储的,就可以省去这些额外工作。
<?php/***************************************************************** * excode.php * @author 风舞 * @email wjiujun (at) gmail.com * @note 一个中文附加码 ********************************************...