原理: 将图片的SRC指向一个CFM文件,在CFM文件中用JAVA功能创建一个显示验证码的图片,同时记录Session变量。当用户输入验证码后与Session变量进行比较!
示例:
请输入验证码:
比较用户输入的验证码:
<!---验证码不对--->
//定义图像存放路径
path=getDirectoryFromPath(expandPath("*.*"));
outputStream = createObject("java","java.io.FileOutputStream");
imageIO = createObject("java","javax.imageio.ImageIO");
outputStream.init("#path#code.png");
// 输出图象到本地
imageIO.write(createImage(),"png",outputStream)
captcha.cfm内容如下:
<!-- ******************产生随机数字和字母******************** -->
<!-- ***********************创建图形******************************* -->
<!-- 创建JAVA类 -->
<!-- 定义字体样式 -->
<!-- 在内存中创建图象 -->
<!-- 获取图形 -->
<!-- 设定背景色 -->
<!-- 获取随机产生的认证码 -->
<!-- 将认证码写入SESSION用于比较 -->
<!-- 将认证码显示到图象中 -->
<!-- 使图象生效 -->
//定义图像存放路径
path=getDirectoryFromPath(expandPath("*.*"));
outputStream = createObject("java","java.io.FileOutputStream");
imageIO = createObject("java","javax.imageio.ImageIO");
outputStream.init("#path#code.png");
// 输出图象到本地
imageIO.write(createImage(),"png",outputStream);
<!-- 设置页面不被缓存 -->
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7718881/viewspace-1042309/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7718881/viewspace-1042309/