当前位置导航:炫浪网>>网络学院>>网页制作>>JSP教程

JSP验证码大全之验证码使用与乱码解决

    以上两篇文章的内容介绍了有关JSP中产生数字验证码跟中文验证码的源代码并做了分析,本文中介绍如何对以上产生的数字跟中文验证码进行使用,以及如何解决中文验证码的乱码无法正确验证的问题。

    对验证码的使用分为两个部分,分别为验证码的调用和验证过程,以下分别做说明介绍。

    三、在JSP中调用验证码

    使用验证码直接在图片处调用产生验证码的JSP文件即可,同时在刷新验证码按钮处的js代码中使用JSP验证码文件,页面源码如下。

<form id="dForm" method=post action="val.jsp">

<ul class="sFrm">

<li><b></b><img id="code" border=0 src="Num.jsp"/><input type="button" value="看不清,换一张" onClick="document.getElementById('code').src='ColorChinese.jsp'"><div class="clear0"></div></li>

<li><b>验证码</b><input type="text" name="input" maxlength=8 value=""  styleClass="sIpt itemFm"><div class="clear0"></div></li>

<li class="bar"><b></b><input type="submit" value="验证测试"  styleClass="logbtn3"></li>

</ul>
</form>

    四、在JSP中验证码的验证过程以及中文乱码处理

    获取用户输入的验证码并与Session中的验证码比较,相同即通过,否则拒绝,对于JSP中中文验证码的处理注意要在页面中定义JSP页面编码跟获取Session的字符编码一致,此处使用的是统一的GB2312编码,否则将出现验证码无法成功验证的情况。

val.jsp
<%@ page language="java" pageEncoding="GB2312" %>

<%

    request.setCharacterEncoding("gb2312");
    //获取Session会话中缓存的验证码
    String rand = (String)session.getAttribute("rand");
    //获取用户输入的验证码
    String input = request.getParameter("input");


    if(rand==null||input==null)

    {
       //无输入验证码处理代码
    }

    if (rand.equals(input)) {

       //验证码对比成功

    }

    else  {
       //验证码失败处理代码
    }
%>

    以上为在JSP页面中的验证码生成以及使用处理的源码分析,在接下来的文章中将介绍下在Servlet中使用验证码程序。
相关内容
赞助商链接