免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1253 | 回复: 3
打印 上一主题 下一主题

哪位作过验证码程序啊??JSP的!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-03-22 15:02 |只看该作者 |倒序浏览
哪位作过验证码程序啊??JSP的!!类似下面的:能将代码提供给大家看看吗??
BufferedImage image = new BufferedImage(60, 20,
BufferedImage.TYPE_INT_RGB);

// 获取图形上下文
Graphics g = image.getGraphics();

// 设定背景色
g.setColor(Color.white);
g.fillRect(0, 0, width, height);

//画边框
g.setColor(Color.black);
g.drawRect(0,0,width-1,height-1);

// 取随机产生的认证码(4位数字)
String rand = request.getParameter("rand";
rand = rand.substring(0,rand.indexOf(".");
switch(rand.length())
{
case 1: rand = "000"+rand; break;
case 2: rand = "00"+rand; break;
case 3: rand = "0"+rand; break;
default: rand = rand.substring(0,4); break;
}

// 将认证码存入SESSION。。。。

// 将认证码显示到图象中
g.setColor(Color.black);
g.setFont(new Font("Times New Roman",Font.PLAIN,1);
g.drawString(rand,10,15);

// 随机产生干扰点
Random random = new Random();
for (int i=0;i<88;i++)
{
int x = random.nextInt(width);
int y = random.nextInt(height);
g.drawLine(x,y,x,y);
}

// 图象生效
g.dispose();

// 输出图象到页面
ImageIO.write(image, "JPEG", response.getOutputStream());

=======================================
调用的时候用脚本写
document.write("<img border=0 src=image.jsp?
rand="+Math.random()*10000+">;";

论坛徽章:
0
2 [报告]
发表于 2004-03-22 15:05 |只看该作者

哪位作过验证码程序啊??JSP的!!

不一定要画图,其实您只需要打开别的网站的源码看看就会发现
譬如sun.com.cn就是使用了四个小图片,依靠随机数来调用不同的图片:)
而Chinaren.com则是用的php的画图:)

我做过的验证码就是依靠随机数随机调用10个小图片中的四个:)

论坛徽章:
0
3 [报告]
发表于 2004-03-27 10:17 |只看该作者

哪位作过验证码程序啊??JSP的!!

那能不能将你的代码贴出来看一下啊??谢谢!!!

论坛徽章:
0
4 [报告]
发表于 2004-03-28 17:53 |只看该作者

哪位作过验证码程序啊??JSP的!!

对不起,我觉得我是新手,很新的,都会写,如果您写不出来,那就不好说什么了,很基础的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP