为什么我的验证码的session的值总是前一个验证码?(急) [问题点数:80分]

Bbs1
本版专家分:0
结帖率 94.74%
Bbs7
本版专家分:20767
Blank
红花 2007年10月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2007年11月 Web 开发大版内专家分月排行榜第二
Bbs7
本版专家分:20767
Blank
红花 2007年10月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2007年11月 Web 开发大版内专家分月排行榜第二
Bbs7
本版专家分:20767
Blank
红花 2007年10月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2007年11月 Web 开发大版内专家分月排行榜第二
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs7
本版专家分:20767
Blank
红花 2007年10月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2007年11月 Web 开发大版内专家分月排行榜第二
Bbs7
本版专家分:20767
Blank
红花 2007年10月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2007年11月 Web 开发大版内专家分月排行榜第二
Bbs4
本版专家分:1827
Bbs1
本版专家分:0
Bbs7
本版专家分:20767
Blank
红花 2007年10月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2007年11月 Web 开发大版内专家分月排行榜第二
Bbs1
本版专家分:0
session无法使用,验证码总是不对
今天把windows上的php工程放在centOS服务器上去运行,跑起来之后发现输入<em>验证码</em><em>总是</em>不对 后来查到是<em>session</em>没有保存 在网上查到是因为centOS(或者其他linux系统)的www文件没有写入权限,具体来说是<em>session</em>要写入的文件夹没有写入权限。 这个时候我们直接通过命令给文件夹设置写入权限就可以了。 这里我直接将www整个文件夹设置了最
为什么一个验证码?
难道还有人破解?
用servlet写了个验证码,,,,但是为什么刷新页面获得到的验证码总是一个页面的验证码
用servlet写了个随机产生的<em>验证码</em>并通过ImageIO.write输出,,同时在方法中在产生<em>验证码</em>之后通过request.getSession().setAttribute("verifyCode",verifyCode)设置,,然后在前台img标签中的src属性指向servlet的地址。。。。并设置了<em>一个</em>input标签,标签中value=""。。。。但是问题产生了,,,<em>为什么</em>input的value值<em>总是</em>刷新页面前那个页面产生的<em>验证码</em>?? 小弟表达能力有限,,所以献上代码。rnrnrn//Servlet的doGet方法中的代码rnBufferedImage image = new BufferedImage(......);rnGraphics g = image.getGraphics();rnrn//设置g的一系列参数,,,省略...............rnrnString verifyCode = verifyCode(); //verifyCode()是自己写的私有方法,用于产生随机代码rnrequest.getSession().setAttribute(“verifyCode”,verifyCode);rnrn//.........rnImageIO.write(......) //将此图片输出rnrnrnrn//前台jsp页面的代码rn">rnrn此时若是第一次加载此页面,那么input里面为空,,,刷新此页面之后,input里面的文本值为上<em>一个</em>页面产生的<em>验证码</em>,,请问这是<em>为什么</em>,,,难道是我不小心又执行了一次生成<em>验证码</em>的方法??
谁用过AutoAuthCode验证码控件,为什么总是验证码错误?
我的网页使用的母版页,控件是放在内容页上的,而且<em>一个</em>页面上有两个验证嘛控件rn我反复验证了很多次,发现当页面第一次加载后<em>验证码</em><em>session</em>得值和图形上的字样是对应的,也就是这时候是能验证成功的,但是当页面有过回发或刷新之后,<em>验证码</em>图形和<em>session</em>的对应就乱了,有可能一直就是提示<em>验证码</em>错误了,很多次可能碰巧能验证成功一次,请问这是什么原因?怎么解决?
验证码注册用户,为什么总是新建session
我有<em>一个</em>servlet负责随机生成<em>验证码</em>图片,并记录到<em>session</em>,另<em>一个</em>servlet处理注册请求,但两边取到的<em>session</em> ID不同。rn生成图片:rn[code=Java]rn// 将四位数字的<em>验证码</em>保存到Session中。rnHttpSession <em>session</em> = request.getSession(false);rn<em>session</em>.setAttribute("validateCode", randomCode.toString());rnlogger.debug(<em>session</em>.getAttribute("validateCode")+" "+<em>session</em>.getId());rn[/code]rn处理注册请求:rn[code=Java]rnlogger.debug("会话:"+request.getSession(false).getId()rn[/code]rnrn输出日志显示会话ID是不同的,这两个servlet都是每请求一次都会有<em>一个</em>新的<em>session</em> ID,<em>为什么</em>会这样?
验证码的生成与使用,注意验证码session安全
       <em>验证码</em>是为了防止“黑客”利用暴力破解密码而出现的安全技术。比如如果没有<em>验证码</em>,一般登陆页面就会只有登陆名和密码,若“黑客”知道<em>一个</em>用户名后,就可以做<em>一个</em>程序,在那一直猜密码,(也就是暴力破解密码),可如果有的<em>验证码</em>后,这种暴力破解密码的方式就不行了。        通过学习<em>验证码</em>的生成与使用,做一下笔记 1、新建web工程:  2、<em>验证码</em>的本质是在java代码里,通过jav...
Session学习---Session池、验证码
本篇博客知识点1.演示request、<em>session</em>、application(ServletContext)的生命周期 2.Session池的工作原理 3.网页<em>验证码</em>演示request、<em>session</em>、application(ServletContext)的生命周期 主要思路: 在SaveServlet中 设置三个容器的name属性,分别赋值。再写个超链接个GetServlet中去读取出来,输
生成验证码 总是重复
说是<em>验证码</em> 实际不是,,所以不用考虑我设计的问题rnrn主要是 我有个库 里边存好了 <em>验证码</em>rn而我的WebService是要取<em>一个</em>没用的<em>验证码</em>发回给用户,,rnrn目前是我做了<em>一个</em>模拟请求程序 开多线程并发 出现重复取<em>一个</em>的现象rn其实我做的也是比较严谨的,,就是先查看这个<em>验证码</em>是否用过 然后下一句就是直接占用rn但就这微小的时间里 居然也重复了,,,当然 随即取<em>一个</em><em>验证码</em>我也做了 世界上真就这么巧了rnrnrn请问我该如何用<em>一个</em>Select 语句去 选出前700个没用过的<em>验证码</em> 这里判断用 States=0 来确认没被用过rn然后再从第500到700 随即拿出<em>一个</em>来用,同时把这个<em>验证码</em>的 States 改成1 表示我要用了rnrnrn谢谢高手帮我解决这个问题
总是转到验证码错误页面
[b]!!!!!<em>为什么</em>?我做的<em>一个</em>ASP的,明明输入<em>验证码</em>对了,还是会转到<em>验证码</em>错误页。。。。。应该到登陆成功才对啊 rnIf MM_valUsername <> "" Then //如果用户名不为空rn If Trim(Request.Form("GetCode"))=Empty Or Trim(Session("cnbruce.com_GetCode"))<>Trim(Request.Form("GetCode"))Then //如果<em>验证码</em>为空或者<em>验证码</em>错误rn Response.Redirect("yzmcw.asp") //转到<em>验证码</em>错误页面rn response.endrn End Ifrn MM_fldUserAuthorization=""rn MM_redirectLoginSuccess="dlcgjs.asp"// 转到登陆成功rn MM_redirectLoginFailed="dlsbjs.asp"//转到登录失败 [/b][color=#FF0000][/color]
验证码的问题,无法取当前的session
在生成随机数后,设置为rnSession["RandomNumber"] = 产生的数字rnrn然后我在登陆界面取Session["RandomNumber"]的值,取得的只是上一次产生的数字。rnrn很疑惑,到底怎么回事?rn
验证码 +session保存获取
//获取 @RequestMapping("yzm") public void yzm(HttpServletRequest re,HttpServletResponse po) throws IOException{ int height=45; int width=80; BufferedImage buff=new Buffere
session 的应用——验证码
[code=&quot;html&quot;] Insert title here ${requestScope.errormsg } Name: Password: Code: Confir...
session存储验证码问题
用户在登录的时候,公司的登录界面随机取得的<em>验证码</em><em>为什么</em>不存储在seesion里面,等登录成功在从seesion除去不就好了,想不通。而是存放在数据库字段里面,<em>验证码</em>验证完后并且从把数据库存放这行<em>验证码</em>数据删除,感觉好复杂呀,像不通,并且我在代码里面页看到了用<em>session</em>,可就是给它注释了,请问这样不用<em>session</em>有什么好处吗?
session验证码问题
同<em>一个</em>页面,在上面调用<em>验证码</em>文件生成了<em>验证码</em>存入<em>session</em>变量 code中,rn在页面下面调用<em>session</em>("code") <em>为什么</em><em>总是</em>上次生成的<em>验证码</em>,而不是当前新生成的?
验证码的Session问题!!
dCheck.aspx为<em>验证码</em>图片页rndReg.aspx为<em>验证码</em>执行页rn问题:先执行dReg.aspx 点击button比较输入的和生成的<em>验证码</em>, rn就会出现错误提示,说是缺少对象.rnrn如果先执行dCheck.aspx 在执行dReg.aspx则没有问题rnrn创建<em>验证码</em>图片的页面dCheck.aspx 它的后台cs文件代码如下:rnrn private void Page_Load(object sender, System.EventArgs e)rn rn // 在此处放置用户代码以初始化页面rn //RndNum是<em>一个</em>自定义函数rn string VNum=RndNum(4); //这里的数字4代表显示的是4位的验证字符串!rn Session["VNum"]=VNum;rn ValidateCode(VNum);rn rnrn #region Web 窗体设计器生成的代码rn override protected void OnInit(EventArgs e)rn rn //rn // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。rn //rn InitializeComponent();rn base.OnInit(e);rn rn rn /// rn /// 设计器支持所需的方法 - 不要使用代码编辑器修改rn /// 此方法的内容。rn /// rn private void InitializeComponent()rn rn this.Load += new System.EventHandler(this.Page_Load);rnrn rn #endregionrnrn //生成图像函数rn private void ValidateCode(string VNum) rn rn int Gheight=(int)(VNum.Length * 11.5);rn //gheight为图片宽度,根据字符长度自动更改图片宽度rn System.Drawing.Bitmap Img = new System.Drawing.Bitmap(Gheight,20);rn Graphics g = Graphics.FromImage(Img);rn g.DrawString(VNum,new System.Drawing.Font("Arial",10),new System.Drawing.SolidBrush(Color.Red),3,3); rn //在矩形内绘制字串(字串,字体,画笔颜色,左上x.左上y) rn System.IO.MemoryStream ms=new System.IO.MemoryStream();rn Img.Save(ms,System.Drawing.Imaging.ImageFormat.Png); rn Response.ClearContent(); //需要输出图象信息 要修改HTTP头 rn Response.ContentType="image/Png";rn Response.BinaryWrite(ms.ToArray());rn g.Dispose();rn Img.Dispose(); rn Response.End();rn rnrn //生成随机数函数中从Vchar数组中随机抽取rn //字母区分大小写rn public string RndNum(int VcodeNum) rn rn string Vchar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,W,X,Y,Z" ;rn rn string[] VcArray = Vchar.Split(',') ;rn string VNum = "" ;//由于字符串很短,就不用StringBuilder了rn int temp = -1 ;//记录上次随机数值,尽量避免生产几个一样的随机数rnrn //采用<em>一个</em>简单的算法以保证生成随机数的不同rn Random rand =new Random();rn for ( int i = 1 ; i < VcodeNum+1 ; i++ ) rn rn if ( temp != -1) rn rn rand =new Random(i*temp*unchecked((int)DateTime.Now.Ticks));rn rn //int t = rand.Next(35) ;rn int t=rand.Next(35);rn if (temp != -1 && temp == t) rn rn return RndNum( VcodeNum );rn rn temp = t ;rn VNum += VcArray[t];rnrn rn return VNum ;rn rn
php验证码 SESSION值产生失败的问题
最近做了个项目,当对URL进行改写的时候,发现<em>验证码</em>的<em>session</em>值有时候会不正常产生,经过后面的检查,原来是<em>验证码</em>的路径没有按照URL改写规则进行,导致<em>session</em>的写入路径不对 解决方法:对<em>验证码</em>的路径按照规则编写即可
开发验证码前的准备
第八季thinkphp5缓存和点赞功能
SESSION和验证码的奇怪问题
服务器安装的是apachernrn网站是用ThinkPHP框架开发的,自带的<em>验证码</em>图片rnrn会员注册页面,用到了<em>验证码</em>,html页面:rnrnrnrn注册时,程序判断<em>验证码</em>图片的代码:rnrnif($_SESSION['verify'] != md5($_POST['verify']))rn exit('<em>验证码</em>错误!');rnrn程序应该是没有问题的,因为我在本机测试和服务器上测试是正常的rnrn可是今天有个人说注册时,明明<em>验证码</em>输入是对的,结果提示:<em>验证码</em>错误!rnrn他说用IE和FF浏览器都不行……rnrn我自己上去测试注册了新会员可以,其他也有其他人注册会员,同样成功。rnrn不知道像我这种情况,是哪里出了问题?rnrn我怀疑是不是web环境:apache+php出了问题?
关于session验证码
我在thinkphp中 用<em>验证码</em> <em>验证码</em>可以出来(<em>验证码</em>是存入到<em>session</em>中的)rn 然后输出<em>验证码</em>的md5值 rnrnrn发现输出的值 是没有的 而 刷新网页后 输出的<em>验证码</em>md5值是上一次的 以此 每次输出的都是上一次的值rnrnrn求解下
session验证码案例
使用(原理是使用java 的绘图技术)首先我们创建两个view:(V层)Login页面:   //登录验证 out.println(&quot;&amp;lt;form action='/mycheckcode/LoginCl' method='post' &amp;gt;&quot;); out.println(&quot;账号:&amp;lt;input type='text' name='user' /&amp;gt;&amp;lt;br/&amp;gt;&quot;)...
验证码session不同步
<em>验证码</em>是在servlet中生成的,然后就放到<em>session</em>中,可页面取的时候怎么老是和servlet中的<em>session</em>不同步,也就是页面显示的<em>验证码</em>和从页面取出的<em>验证码</em>不一样,而且页面取出的<em>总是</em>上一次显示的,比如第一次显示的是"123",这时取出来的就不是“123”,刷新页面后再从<em>session</em>中取,取出来的才是"123",也就是说在页面从<em>session</em>中取出来的<em>验证码</em><em>总是</em>比显示的<em>验证码</em>慢一拍,这是怎么回事???rn另外servlet贴出来:rnrnpublic class AuthImg extends HttpServlet rn private static final String CONTENT_TYPE="text/html;charset=gb2312";rn private Font font=new Font("Times New Roman",Font.PLAIN,17);rn rn public void init() throws ServletExceptionrn super.init();rn rn rn public Color getRandColor(int fc,int bc)rn Random random=new Random();rn if(fc>255)rn fc=255;rn if(bc>255)rn bc=255;rn int r=fc+random.nextInt(bc-fc);rn int g=fc+random.nextInt(bc-fc);rn int b=fc+random.nextInt(bc-fc);rn return new Color(r,g,b);rn rn rn public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOExceptionrn response.setHeader("Pragma","No-cache");rn response.setHeader("Cache-Control","no-cache");rn response.setDateHeader("Expires",0);rn response.setContentType("image/jpeg");rn int width=100;rn int height=18;rn BufferedImage image=new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB);rn Graphics g=image.getGraphics();rn Random random=new Random();rn g.setColor(getRandColor(200,250));rn g.fillRect(1,1,width-1,height-1);rn g.setColor(new Color(102,102,102));rn g.drawRect(0,0,width-1,height-1);rn g.setFont(font);rn g.setColor(getRandColor(160,200));rn for(int i=0 ;i));rn rn rn public void destroy()rn rn rnrn
验证码session 的问题
在第一次显示<em>验证码</em>的时候,<em>session</em>正常,点击后,<em>session</em> 和图片的数字,0半秒左右后就不一致了。rn很奇怪的问题rn调用rnrnrn<em>验证码</em>文件rnrnusing System;rnusing System.Collections.Generic;rnusing System.Linq;rnusing System.Web;rnusing System.Web.SessionState;rnusing System.Text;rnusing System.Drawing;rnusing System.Drawing.Imaging;rnusing System.Runtime.InteropServices;rnrnnamespace PicManage.incrnrn /// rn /// $codebehindclassname$ 的摘要说明rn /// rn public class code : IHttpHandler,IRequiresSessionState rn rn private const double PI = 3.1415926535897932384626433832795;rn private const double PI2 = 6.283185307179586476925286766559;rnrn #region <em>验证码</em>长度(默认4个<em>验证码</em>的长度)rn int length = 4;rn public int Lengthrn rn get return length; rn set length = value; rn rn #endregionrnrn #region <em>验证码</em>字体大小(为了显示扭曲效果,默认14像素,可以自行修改)rn int fontSize = 14;rn public int FontSizern rn get return fontSize; rn set fontSize = value; rn rn #endregionrnrn #region 边框补(默认1像素)rn int padding = 1;rn public int Paddingrn rn get return padding; rn set padding = value; rn rn #endregionrnrn #region 是否输出燥点(默认输出)rn bool chaos = true;rn public bool Chaosrn rn get return chaos; rn set chaos = value; rn rn #endregionrnrn #region 输出燥点的颜色(默认灰色)rn Color chaosColor = Color.LightGray;rn public Color ChaosColorrn rn get return chaosColor; rn set chaosColor = value; rn rn #endregionrnrn #region 自定义背景色(默认白色)rn Color backgroundColor = Color.White;rn public Color BackgroundColorrn rn get return backgroundColor; rn set backgroundColor = value; rn rn #endregionrnrn #region 自定义随机颜色数组rn Color[] colors = Color.Black, Color.Red, Color.DarkBlue, Color.Green, Color.Orange, Color.Brown, Color.DarkCyan, Color.Purple ;rn public Color[] Colorsrn rn get return colors; rn set colors = value; rn rn #endregionrnrn #region 自定义字体数组rn string[] fonts = "Arial", "Georgia" ;rn public string[] Fontsrn rn get return fonts; rn set fonts = value; rn rn #endregionrnrn #region 自定义随机码字符串序列(使用逗号分隔)rn string codeSerial = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";rn public string CodeSerialrn rn get return codeSerial; rn set codeSerial = value; rn rn #endregionrnrnrn public void ProcessRequest(HttpContext context)rn rn context.Session.Timeout = 20;rn string code = CreateVerifyCode(4);rn context.Session.Remove(code);rn context.Session.Add("code",code);rn CreateImageOnPage(code, context);rn rn rnrnrn public string CreateVerifyCode(int codeLen)rn rn if (codeLen == 0)rn rn codeLen = Length;rn rnrn string[] arr = CodeSerial.Split(',');rnrn string code = "";rnrn int randValue = -1;rnrn Random rand = new Random(unchecked((int)DateTime.Now.Ticks));rnrn for (int i = 0; i < codeLen; i++)rn rn randValue = rand.Next(0, arr.Length - 1);rn code += arr[randValue];rn rn return code;rn rnrn rnrn /// rn /// 生成校验码图片rn /// rn /// rn /// rn public Bitmap CreateImageCode(string code)rn rn int fSize = FontSize;rn int fWidth = fSize + Padding;rnrn int imageWidth = (int)(code.Length * fWidth) + 20 + Padding * 2;rn int imageHeight = fSize +10;rnrn System.Drawing.Bitmap image = new System.Drawing.Bitmap(imageWidth, imageHeight);rnrn Graphics g = Graphics.FromImage(image);rnrn g.Clear(BackgroundColor);rnrn Random rand = new Random();rnrn //给背景添加随机生成的燥点rn if (this.Chaos)rn rnrn Pen pen = new Pen(ChaosColor, 0);rn int c = Length * 10;rnrn for (int i = 0; i < c; i++)rn rn int x = rand.Next(image.Width);rn int y = rand.Next(image.Height);rnrn g.DrawRectangle(pen, x, y, 1, 1);rn rn rnrn int left = 0, top = 0, top1 = 1, top2 = 1;rnrn int n1 = (imageHeight - FontSize - Padding * 2);rn int n2 = n1 / 4;rn top1 = n2;rn top2 = n2 * 2;rnrn Font f;rn Brush b;rnrn int cindex, findex;rnrn //随机字体和颜色的<em>验证码</em>字符rn for (int i = 0; i < code.Length; i++)rn rn cindex = rand.Next(Colors.Length - 1);rn findex = rand.Next(Fonts.Length - 1);rnrn f = new System.Drawing.Font(Fonts[findex], fSize, System.Drawing.FontStyle.Bold);rn b = new System.Drawing.SolidBrush(Colors[cindex]);rnrn if (i % 2 == 1)rn rn top = top2;rn rn elsern rn top = top1;rn rnrn left = i * fWidth;rnrn g.DrawString(code.Substring(i, 1), f, b, left, top);rn rnrn //画<em>一个</em>边框 边框颜色为Color.Gainsbororn g.DrawRectangle(new Pen(Color.Gainsboro, 0), 0, 0, image.Width - 1, image.Height - 1);rn g.Dispose();rnrn //产生波形rn int phase = (int)PI2 * 100;rn image = TwistImage(image, true, 3, new Random().Next(0, phase) , 0.3f );rnrn return image;rn rnrn /// rn /// 正弦曲线Wave扭曲图片rn /// rn /// 图片路径rn /// 如果扭曲则选择为Truern /// 波形的幅度倍数,越大扭曲的程度越高,一般为3rn /// 波形的起始相位,取值区间[0-2*PI)rn /// rn public System.Drawing.Bitmap TwistImage(Bitmap srcBmp, bool bXDir, double dMultValue, double dPhase, float times)rn rn int w = srcBmp.Width;rn int h = srcBmp.Height;rn System.Drawing.Bitmap destBmp = new Bitmap(w, h, PixelFormat.Format24bppRgb);rnrn // 将位图背景填充为白色rn using (System.Drawing.Graphics graph = System.Drawing.Graphics.FromImage(destBmp))rn rn graph.Clear(Color.White);rn rnrn double dBaseAxisLen = bXDir ? (double)h : (double)w;rn BitmapData destData = destBmp.LockBits(new Rectangle(0, 0, w, h), ImageLockMode.WriteOnly, destBmp.PixelFormat);rn BitmapData srcData = srcBmp.LockBits(new Rectangle(0, 0, w, h), ImageLockMode.ReadOnly, srcBmp.PixelFormat);rn byte[] rgbValues = new byte[3];rn for (int i = 0; i < w; i++)rn rn for (int j = 0; j < h; j++)rn rn double dx = 0;rn dx = bXDir ? (PI2 * (double)j * times) / dBaseAxisLen : (PI2 * (double)i * times) / dBaseAxisLen;rn dx += dPhase;rn double dy = Math.Sin(dx);rnrn // 取得当前点的颜色rn int nOldX = 0, nOldY = 0;rn nOldX = bXDir ? i + (int)(dy * dMultValue) : i;rn nOldY = bXDir ? j : j + (int)(dy * dMultValue);rnrn if (nOldX >= 0 && nOldX < wrn && nOldY >= 0 && nOldY < h)rn rn Marshal.Copy((IntPtr)((int)srcData.Scan0 + ((j * srcData.Stride) + (i * 3))), rgbValues, 0, 3);rn Marshal.Copy(rgbValues, 0, (IntPtr)((int)destData.Scan0 + ((nOldY * destData.Stride) + (nOldX * 3))), 3);rn rn rn rn destBmp.UnlockBits(destData);rn srcBmp.UnlockBits(srcData);rn if (srcBmp != null)rn srcBmp.Dispose();rn return destBmp;rn rnrnrn public void CreateImageOnPage(string code, HttpContext context)rn rn System.IO.MemoryStream ms = new System.IO.MemoryStream();rn Bitmap image = this.CreateImageCode(code);rnrn image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);rnrn context.Response.ClearContent();rn context.Response.ContentType = "image/png";rn context.Response.BinaryWrite(ms.GetBuffer());rnrn ms.Close();rn ms = null;rn image.Dispose();rn image = null;rnrn context.Response.End();rn rn public bool IsReusablern rn getrn rn return false;rn rn rn rnrn
验证码session问题
仿做了个登录页面,有<em>验证码</em>rn登录页面代码:rn[code=html]rnrn rn看不清rn登录rn[/code]rnrn[code=javascript]rn rn[/code]rnrnValidateCode.ashx代码如下rn[code=csharp]rnpublic class ValidateCode : IHttpHandler, IRequiresSessionStatern rnrn public void ProcessRequest(HttpContext context)rn rn context.Response.ContentType = "image/jpeg";rn System.Drawing.Image ima = BytesToImage(CheckCode(context));rn ima.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);rn rnrn public bool IsReusablern rn getrn rn return false;rn rn rnrn /// rn /// <em>验证码</em>的校验rn /// rn /// rn /// rn protected System.Drawing.Image CheckCode(HttpContext context)rn rn //生成<em>验证码</em>rn Common.ValidateCode validateCode = new Common.ValidateCode();rn string code = validateCode.CreateValidateCode(4);rn context.Session["Validatecode"] = code; //生成<em>验证码</em>时记录<em>session</em>rn return validateCode.CreateValidateGraphic(code);rn rn rn[/code]rnrn如上,login页面(前端或者后台)一直获取不到生成图片ValidateCode.ashx的<em>session</em>,是什么原因rn谢谢
session验证码值到页面取不到
severlet能取到值,到页面就取不到了,<em>session</em>默认30分钟,肯定没过期啊,值也存进去了,rn servlet中:request.getSession().setAttribut("validateCode",randomCode.toString()); rn System.out.println(<em>session</em>.getAttribute("validateCode")+"vvvvvvvv");rn 到这里能打印出来的rnjsp:中: $<em>session</em>Scope.validateCode 为nullrn跪求高手指点,不胜感激!!
SuperAuthenticationCode验证码控件的session值如何取到?
前页通过ajax将数据发送至处理页,调试发现 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。rn[code=C#]rnpublic class sendComment : IHttpHandler rn rn public void ProcessRequest (HttpContext context) rn rn string name = HttpContext.Current.Request["name"].ToString();rn string code = HttpContext.Current.Request["code"].ToString();rn string remark = HttpContext.Current.Request["remark"].ToString();rn if (HttpContext.Current.Session["AuthenticationCode"].ToString()!=code)rn rn HttpContext.Current.Response.StatusCode = 500;rn HttpContext.Current.Response.Write("<em>验证码</em>不正确!");rn rnrn rn rn public bool IsReusable rn get rn return false;rn rn rnrnrn[/code]
注释前端的验证码
   前端的<em>验证码</em>防止暴力破解。在作自动化的时候,需要把前端的<em>验证码</em>注释掉1.在部署项目的时候,现在本地解压war包,找到找到application.properties文件,打开该文件2.修改application.properties的配置verifyCode.isVerify=false代表<em>验证码</em>无效,在作自动化测试的时候,随便填<em>一个</em>数就可以了...
关于验证码及Session的问题
<em>验证码</em>使用<em>session</em>关联图片上的字母.rn<em>为什么</em>我在程序中得到的<em>session</em>值总比图片的字母慢一拍.?rn求助!
关于Session 验证码的问题
前些时候做网站的时候需要<em>一个</em>注册界面,用到了图片<em>验证码</em>。为了省点事,直接调用了现成的webservice(呵呵,这里跟大家分享下这个提供服务的网站,http://www.webxml.com.cn/WebServices/ValidateCodeWebService.asmx)。rn从网上看的资料,建立<em>一个</em>ValidatePic.aspx的页,专门用来输出图片,页面的后台代码如下:rn[code=C#]rn protected void Page_Load(object sender, EventArgs e)rn rn MyRandom mr = new MyRandom();rn string valStr = mr.RandNum(4);rn Session["validateSn"] = valStr;//这里有问题??!!rn cn.com.webxml.www.ValidateCodeWebService wr = new cn.com.webxml.www.ValidateCodeWebService();rn byte[] bytesBmp = wr.enValidateByte(valStr);rn Response.BinaryWrite(bytesBmp);rn Response.End();rn rn[/code]rn然后,在注册界面上的<em>一个</em>img中引用这个图片,即:rn[code=HTML]rn rn[/code]rn验证时,rn[code=C#]rnif (validateStr == Session["validateSn"].ToString())rn[/code]rnrn现在,问题是:当我第一次打开vs2008时,运行这个程序,会出现“未将对象设置引用的问题”。以后就OK了。查了些资料,貌似刚开始Session["validateSn"]没有实例化。可是明明我在Page_Load中写了Session["validateSn"] = valStr;这不是实例化吗?再说,只有第一次不可以,图形<em>验证码</em>也已经出现了。
php 验证码 session
che.php页面rnrnrnsub.php页面rnrn rn rn rn rnrnrn$_SESSION[check_pic] 值一直是空的。。。rn希望大哥们看看啊!
php 验证码 session [
che.php页面 rn rnrnsub.php页面 rn rn rn rn rn rn rnrn$_SESSION[check_pic] 值一直是空的。。。 rn希望大哥们看看啊!
!!session验证码问题
公司有<em>一个</em>老站点是通过输入<em>一个</em>员工号来查询信息 原理是通过form表单 POST数据得到人员信息 (但源码已经无法得到了,<em>验证码</em>应该是用Session验证的)rn代码如下:rn rn rn 员工号rn rn rn rn rn rn rnrnrn现在我要做<em>一个</em>新站点 需要引用老页面的查询,<em>验证码</em>还是从老地址取rn但是我要把查询的结果去除一些相关的信息 所以自己做了查询页面search.aspx 这个页面就是后台模拟POST数据(也就是向老页面http://www.test11.com/abc.jsp 发送POST数据然后得到结果),再把得到的值加以处理然后显示rn代码如下:rnrn rn rn 员工号rn rn rn rn rn rn rnrnrnsearch.aspx的代码如下:rnEncoding encoding = Encoding.GetEncoding("UTF-8");rnbyte[] Data = encoding.GetBytes([color=#993300]"idno=123456"[/color]);rnrnHttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create([color=#993300]"http://www.test11.com/abc.jsp"[/color]);rnmyRequest.Method = "POST";rnmyRequest.ContentType = "application/x-www-form-urlencoded";rnmyRequest.ContentLength = Data.Length;rnrnStream Out = myRequest.GetRequestStream();rnOut.Write(Data, 0, Data.Length);rnOut.Close();rnHttpWebResponse MyResponse = (HttpWebResponse)myRequest.GetResponse();rnStream InStream = MyResponse.GetResponseStream();rnStreamReader read = new StreamReader(InStream, encoding);rnreturn read.ReadToEnd();rnrn问题是不知道怎么把<em>验证码</em>的Session信息传递给老的页面, 如果不加<em>验证码</em>就无法得到老页面的查询信息rn请大家指点!多谢
关于验证码session的问题
1.ValiCode.java(生成<em>验证码</em>图片并且存入<em>session</em>的Servlet)rn2.WebServlet,java(表单提交的Servlet)rn问题:第一步Servlel存入<em>session</em>的时候把变量存进去 但是WebServlet却取不到数据 为nullrn测试过 直到第<em>一个</em>Servlet的末尾 还是能取到刚创建的Servlet 但是换了<em>一个</em>Servlet就一直取不到rn下面贴图[img=https://img-bbs.csdn.net/upload/201711/28/1511879821_239208.png][/img][img=https://img-bbs.csdn.net/upload/201711/28/1511879825_954499.png][/img]
验证码存入session
这个项目前面的章节简单介绍了idea的使用,vue的入门,Spring Boot的应用开发入门。nnn后面开发了<em>一个</em>通用的后台管理系统。技术上使用Spring Boot框架整合ssm,数据库使用MySQL,使用整合了druid数据库连接池。使用了quartz开发自定义定时任务。使用了AOP开发日志系统。使用shiro开发权限功能。使用BootStrap搭建前端页面,Vue做前端交互。
验证码总是错误
rn这是生成<em>验证码</em>的代码。rn[code=C#]rnusing System;rnusing System.Collections;rnusing System.Configuration;rnusing System.Data;rnusing System.Linq;rnusing System.Web;rnusing System.Web.Security;rnusing System.Web.UI;rnusing System.Web.UI.HtmlControls;rnusing System.Web.UI.WebControls;rnusing System.Web.UI.WebControls.WebParts;rnusing System.Xml.Linq;rnusing System.Drawing;rnpublic partial class checkcode : System.Web.UI.Pagernrnrn protected void Page_Load(object sender, EventArgs e)rn rn CreateCheckCodeImage(GenerateCheckCode());rn Session["snow"] = GenerateCheckCode();rn rn private string GenerateCheckCode() //生成<em>验证码</em>rn rn int number;rn char code;rn string checkCode = String.Empty;rn System.Random random = new Random();rnrn for (int i = 0; i < 4; i++)rn rn number = random.Next();rnrn if (number % 2 == 0)rn code = (char)('0' + (char)(number % 10));rn elsern code = (char)('A' + (char)(number % 26));rnrn checkCode += code.ToString();rn rn Response.Cookies.Add(new HttpCookie("CheckCode", checkCode));rnrn return checkCode;rn rnrn private void CreateCheckCodeImage(string checkCode) //生成验证图片rn rn if (checkCode == null || checkCode.Trim() == String.Empty)rnrn return;rnrn System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22);rnrn Graphics g = Graphics.FromImage(image);rn tryrn rnrn Random random = new Random(); //生成随机生成器rnrn g.Clear(Color.White); //清空图片背景色rnrn for (int i = 0; i < 2; i++) //画图片的背景噪音线rn rn int x1 = random.Next(image.Width);rn int x2 = random.Next(image.Width);rn int y1 = random.Next(image.Height);rn int y2 = random.Next(image.Height);rnrn g.DrawLine(new Pen(Color.Black), x1, y1, x2, y2);rn rn Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));rnrn System.Drawing.Drawing2D.LinearGradientBrush brush = newrnrn System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height),rnrn Color.Blue, Color.DarkRed, 1.2f, true);rnrnrn g.DrawString(checkCode, font, brush, 2, 2);rnrn for (int i = 0; i < 100; i++) //画图片的前景噪音点rn rn int x = random.Next(image.Width);rn int y = random.Next(image.Height);rn image.SetPixel(x, y, Color.FromArgb(random.Next()));rn rnrn //画图片的边框线rn g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);rn System.IO.MemoryStream ms = new System.IO.MemoryStream();rn image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);rn Response.ClearContent();rn Response.ContentType = "image/Gif";rn Response.BinaryWrite(ms.ToArray());rn rn finallyrn rn g.Dispose();rn image.Dispose();rn rn rnrnrn[/code]rnrn下面为调用验证功能:rn if (TextBox3.Text.Trim() != Session["snow"].ToString())rn rn Response.Write(" ");rn rnrnrn结果无论向TextBox3输入什么<em>总是</em>“<em>验证码</em>错误!”
验证码问题:session取到的值是当前值的前一个
[code=Java]package Servlet;rnrnimport java.awt.Color;rnimport java.awt.Font;rnimport java.awt.Graphics2D;rnimport java.awt.image.BufferedImage;rnimport java.util.Random;rnrnimport javax.imageio.ImageIO;rnimport javax.servlet.ServletException;rnimport javax.servlet.ServletOutputStream;rnimport javax.servlet.http.HttpServlet;rnimport javax.servlet.http.HttpServletRequest;rnimport javax.servlet.http.HttpServletResponse;rnimport javax.servlet.http.HttpSession;rnrn/**rn * 生成随机<em>验证码</em>rn */rnpublic class ValidateCodeServlet extends HttpServlet rnrn private static final long serialVersionUID = 1L;rnrn // <em>验证码</em>图片的宽度。rn private int width = 60;rn // <em>验证码</em>图片的高度。rn private int height = 20;rn // <em>验证码</em>字符个数rn private int codeCount = 4;rnrn private int x = 0;rn // 字体高度rn private int fontHeight;rn private int codeY;rnrn char[] codeSequence = 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',rn 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',rn 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ;rnrn /**rn * 初始化验证图片属性rn */rn public void init() throws ServletException rn // 从web.xml中获取初始信息rn // 宽度rn String strWidth = this.getInitParameter("width");rn // 高度rn String strHeight = this.getInitParameter("height");rn // 字符个数rn String strCodeCount = this.getInitParameter("codeCount");rnrn // 将配置的信息转换成数值rn try rn if (strWidth != null && strWidth.length() != 0) rn width = Integer.parseInt(strWidth);rn rn if (strHeight != null && strHeight.length() != 0) rn height = Integer.parseInt(strHeight);rn rn if (strCodeCount != null && strCodeCount.length() != 0) rn codeCount = Integer.parseInt(strCodeCount);rn rn catch (NumberFormatException e) rn rnrn x = width / (codeCount + 1);rn fontHeight = height - 2;rn codeY = height - 4;rnrn rnrn protected void service(HttpServletRequest req, HttpServletResponse resp)rn throws ServletException, java.io.IOException rn // 定义图像bufferrn BufferedImage buffImg = new BufferedImage(width, height,rn BufferedImage.TYPE_INT_RGB);rn Graphics2D g = buffImg.createGraphics();rnrn // 创建<em>一个</em>随机数生成器类rn Random random = new Random();rnrn // 将图像填充为白色rn g.setColor(Color.WHITE);rn g.fillRect(0, 0, width, height);rnrn // 创建字体,字体的大小应该根据图片的高度来定。rn Font font = new Font("Fixedsys", Font.PLAIN, fontHeight);rn // 设置字体。rn g.setFont(font);rnrn // 画边框。rn g.setColor(Color.BLACK);rn g.drawRect(0, 0, width - 1, height - 1);rnrn // 随机产生40条干扰线,使图象中的认证码不易被其它程序探测到。rn g.setColor(Color.BLACK);rn for (int i = 0; i < codeCount; i++) rn // 得到随机产生的<em>验证码</em>数字。rn String strRand = String.valueOf(codeSequence[random.nextInt(36)]);rn // 产生随机的颜色分量来构造颜色值,这样输出的每位数字的颜色值都将不同。rn red = random.nextInt(255);rn green = random.nextInt(255);rn blue = random.nextInt(255);rnrn // 用随机产生的颜色将<em>验证码</em>绘制到图像中。rn g.setColor(new Color(red, green, blue));rn g.drawString(strRand, (i + 1) * x, codeY);rnrn // 将产生的四个随机数组合在一起。rn randomCode.append(strRand);rn System.out.println(strRand.toString());rn rn // 将四位数字的<em>验证码</em>保存到Session中。rn System.out.println(randomCode.toString());rn HttpSession <em>session</em> = req.getSession();rn <em>session</em>.setAttribute("validateCode", randomCode.toString());rn // 禁止图像缓存。rn resp.setHeader("Pragma", "no-cache");rn resp.setHeader("Cache-Control", "no-cache");rn resp.setDateHeader("Expires", 0);rn rn resp.setContentType("image/jpeg");rn rn // 将图像输出到Servlet输出流中。rn ServletOutputStream sos = resp.getOutputStream();rn ImageIO.write(buffImg, "jpeg", sos);rn sos.close();rn rn[/code]rn在另<em>一个</em>页面中取道的不是当前的值
session完成验证码案例
需求 用户登录的时候使用<em>验证码</em>进行验证 步骤 一、 LoginServlet实现步骤: 使用昨天的代码实现<em>验证码</em>的绘制 将随机产生的字符串放在会话域中 用户登录的时候提交<em>验证码</em>的字符串 比较表单提交的字符串是否与会话域中的字符串相等,如果相等则验证成功 登录一次以后删除会话域中的<em>验证码</em>字符串 登录成功以后保存用户的信息到会话域中,并且跳转到WelcomeServlet 二、 WelcomeSer...
Session验证码和购物车
JSP中<em>验证码</em>和购物车的实例分析,使用最简单的方式来实现<em>验证码</em>和购物车,
Session实现验证码登录
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
session验证码
用<em>session</em>做的PHP<em>验证码</em>功能,小窗口框架刷新,不用刷新整个页面
Session验证码的实现(2018-7-3)
Session 服务端技术(保存在服务端)会话,跟踪,打开浏览器不关就是Session         关了,就结束会话                     一般指用户登陆购物(<em>验证码</em>,购物车)Seesion对象怎么来了的?Request  getSession 1.isNew()判断是不是第一次来 <em>session</em>Id:32位2.<em>session</em>.setAttribute(&quot;name&quot;,&quot;&amp;lt...
不用session和cookie的验证码
完全不用<em>session</em>和cookie的<em>验证码</em>,样式自己设置,自己设置字符数
读取的验证码session 不同步
读取的<em>验证码</em><em>总是</em>上一次的内容,第一次的为空,怎样才能同步呢?
验证码session不一致
[code=VBScript]rn rn rn rnrnrnrn[/code]rnrn与不一致,导致<em>验证码</em>出错rnrncaptcha.asp(部分,贴不下)rn[code=VBScript]rn< 2 thenrn secureCode = CreateGUID(CodeLength)rnelsern %>rn rn 0 thenrn AddNoise()rnend ifrnSendBitmap()rn%>rn[/code]
session[]传递验证码
我的<em>验证码</em>使用Session传值 rn<em>验证码</em>图片src=VerifyCode.aspxrnrn现在的问题是当用户登录后<em>session</em>过期后 rn再点击会员页面跳转到登录页面后 第一登录失败rnrn这时Session里<em>验证码</em>是空rn<em>验证码</em>图片没有更新 rnrnRandom rand = new Random();rnimgVerifyCode.ImageUrl = "VerifyCode.aspx?" + rand.Next(100).ToString();rnrn<em>验证码</em>图片地址改成这样也试过rn跳转之后第一次登录还是不成功 应该这么弄啊 谢谢大家先rn
PHP验证码session不同步
[code=PHP]rnrn[/code]rnrn下面是前端代码rn[code=HTML]rnrnrnrn rn rn rn rn rn rn rn 全球通俱乐部rn rn 全球通俱乐部会所后台rn rn rn rn rn 会所账号:rn rn rn rn 密码:rn rn rn rn <em>验证码</em>:rn rn rn rn rn rn rn rn rn rnrn[/code]
Struts2 session获取验证码
Struts2 <em>session</em>获取<em>验证码</em>  本章节将向大家展示,如何通过struts2框架和<em>session</em>来制作一张图片<em>验证码</em>。还不会搭建struts2框架的博友请参照博文: http://blog.csdn.net/xie_xiansheng/article/details/51116321进行项目框架搭建。 接下来,请看: 那么,如何生成<em>验证码</em>图片并打印出四位<em>验证码</em>
Session应用:验证码技术
字典攻击:javascript 可以发送自己组装的 http 请求,因此可以在 js 的背后放置<em>一个</em>字典序列的密码,以字典序列向登陆处理界面发送 http 请求,每次请求都会使程序访问一次数据库,造成数据库瘫痪,称为数据库恶意攻击。 <em>验证码</em>的作用:<em>验证码</em>的作用就是为了限制人们利用软件工具来暴力猜测密码。在服务器接收表单数据后,首先判断用户是否填写了正确的<em>验证码</em>,之后才开始表单的正常处理流程。防止恶意
session保存验证码的问题
我在code页面生成<em>验证码</em>的原字符 保存到<em>session</em>中 从另<em>一个</em>页面调用 怎么会是空呢? 奇怪rnrncode 的源程序rnrnrn rnrn从另<em>一个</em>页面调用$_SESSION["code"] 居然为空? <em>为什么</em>
验证码问题session出问题了。。。。。。
[img=https://img-bbs.csdn.net/upload/201402/16/1392559817_705870.jpg][/img]rn[img=https://img-bbs.csdn.net/upload/201402/16/1392559836_338860.jpg][/img][img=https://img-bbs.csdn.net/upload/201402/16/1392559857_47223.jpg][/img][img=https://img-bbs.csdn.net/upload/201402/16/1392559873_276108.jpg][/img]rn每次点击<em>验证码</em>时,<em>验证码</em>改变,但是下面的rn不会改变,只有当整个页面F5刷新时,才会改变rn且显示的都是上一次的<em>验证码</em>?这是什么原因?查了好久都不知道什么原因。。求解释??
验证码session的困扰
已知: index.jsp(注册页面) Checkfunction.js(一些验证方法,里面判断用户输入是否合法,比如长度之类的,前台验证)rnrn想要实现: <em>验证码</em>在注册页面用户输入后,我现在的Checkfunction.js只是判断了<em>验证码</em>输入的长度是否是四位,不能为空等,rnrn 如果我想要实现<em>验证码</em>的校验对错,(<em>验证码</em>“VerifyCode”在生成时已经存入<em>session</em>)rn rn想象中的办法: 1、在JSP页面用rn rn 取出verifyCode ,rn 然后在<em>验证码</em>: 隐式的赋值给 id="verifyCode" 的input。供Checkfunction.js里面的方法调用(此处我已经用 onBlur="checkFunction('number')" 实现了<em>一个</em>判断,这个判断是对<em>验证码</em>输入长度的判断)rn 然后在Checkfunction.js中rn function checkFunction(type)rn var number=document.form1.number.value;rn var verifyCode=document.getElementById("verifyCode").value;rn if(verifyCode!=number)rn err_alert('number','&nbsp<em>验证码</em>不正确');rn alert(verifyCode);rn return false;rn rnrn elsern rn err_alert('number','');rn rn rn function err_alert(id,err)rn rn rn document.getElementById(id+'_id').innerHTML=err;rn rn 以上是我的第一种方法,呵呵,结果不用说,是失败的,里面有哪些错误,请各位赐教!!rn 2、用DWR(AJAX不会用,不过DWR也不熟,就是套用以前的代码)rnrn 这个我写了一半就写不下去了,因为我首先要取得<em>session</em>里面的verifyCode,我只知道用rn HttpSession <em>session</em> = request.getSession(true);rn String verifyCode=(String) <em>session</em>.getAttribute("verifyCode");来取得<em>session</em>里面verifyCode的值,但是这要在servlet里面才可以用request,在其他的类里面也要继承httpservlet,导包,还是一样的,这种办法返回值都是void,我需要这个类返回<em>一个</em>int或者Boolean,然后才能用JS里面来判断,rn 我也尝试在servlet里面写个新的方法,但是写一点就没思路了,新方法里面还要用request的,request在里面只有用在doget、dopost才不会报错。rn 所以这方法我也迷茫了。还是要请各位指点!我才接触JAVA相当菜,还请各位不要笑话。感谢!!rnrn我还想请问下,是不是我以上的两种思路都可以实现?请各位对我的思路点评下,感谢!!!!!!(有朋友对我说这里可以用上下文context,我也不是很理解,跟这个有关系吗)
SESSION传递验证码
各位高手:我通过SESSION传递<em>验证码</em>的时候,第一次传过来的值是个空值.如果我刷新一下.获取的是前一次SESSION传过来的值.<em>为什么</em>第一次传过来的<em>验证码</em>是个空值呢??rn在default.aspx页面代码如下: rnstring tmp = RndNum(4); //RndNum是<em>一个</em>方法,获取<em>一个</em>四位的随机数 rn<em>session</em>["num"]=tmp; rnthis.ValidateCode(tmp); //生成<em>一个</em>图片<em>验证码</em> rnrn然后我在另一页面直接通过image1.ImageUrl='default.aspx' rnif (<em>session</em>["num"]!=null)rnstring aa = <em>session</em>["num"].tostring(); rn<em>为什么</em>第一次获取到的值是个空值呢?请高手指点..如何做才能够将随机数通过SESSION传递过来.
login验证码验证码验证码
<em>验证码</em> <em>验证码</em> <em>验证码</em> <em>验证码</em> <em>验证码</em> <em>验证码</em>
设置session验证码有效时间,定时删除session中的验证码
contorller.java import java.util.Timer; import java.util.TimerTask; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSessio
为什么我的验证码没有显示出来?
在登陆页面上,有用户名,密码和<em>验证码</em>三个必填项,<em>验证码</em>是通过图片显示出来的,。登陆页面在我本地运行没有问题,但是在别的机器上运行时,<em>验证码</em>的图片什么都没显示,图片位置是<em>一个</em>红色的叉号,请问这是什么原因。
请教一个验证码值的问题
using System;rnusing System.Data;rnusing System.Configuration;rnusing System.Collections;rnusing System.Web;rnusing System.Web.Security;rnusing System.Web.UI;rnusing System.Web.UI.WebControls;rnusing System.Web.UI.WebControls.WebParts;rnusing System.Web.UI.HtmlControls;rnusing System.IO;rnusing System.Drawing;rnusing System.Drawing.Imaging;rnrnpublic partial class gif : System.Web.UI.Pagernrn protected void Page_Load(object sender, EventArgs e)rn rn string tmp = RndNum(4); rn HttpCookie a = new HttpCookie("pic",tmp); rn Response.Cookies.Add(a); rn this.ValidateCode(tmp);rn rn rn private void ValidateCode(string VNum) rn rn Bitmap Img=null; rn Graphics g=null; rn MemoryStream ms=null; rnrn int gheight=VNum.Length*12; rn Img=new Bitmap(gheight,25); rn g=Graphics.FromImage(Img); rn //背景颜色 rn g.Clear(Color.Blue); rn //文字字体 rn Font f=new Font("Arial Black",10); rn //文字颜色 rn SolidBrush s=new SolidBrush(Color.Red); rn g.DrawString(VNum,f,s,3,3); rn ms=new MemoryStream(); rn Img.Save(ms,ImageFormat.Jpeg); rn Response.ClearContent(); rn Response.ContentType="image/Jpeg"; rn Response.BinaryWrite(ms.ToArray()); rnrn g.Dispose(); rn Img.Dispose(); rn Response.End(); rn rn private string RndNum(int VcodeNum) rn rn string Vchar="0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"; rn string[] VcArray=Vchar.Split(new Char [] ','); rn string VNum=""; rn int temp=-1; rnrn Random rand=new Random(); rnrn for(int i=1;i
关于 SESSION 显示 前一个验证码的问题,请高手解决。
rn我搞了<em>一个</em><em>验证码</em>的功能,但是发现,<em>验证码</em>和SESSION 的不一致,SESSION 总显示前<em>一个</em><em>验证码</em>。请高手解决。rnrnpic.aspxrnrn代码如下:rnrnrnpublic partial class ht_pic : System.Web.UI.Pagernrn protected void Page_Load(object sender, EventArgs e)rn rn this.CreateCheckCodeImage(GenerateCheckCode());rn rn private string GenerateCheckCode()rn rn int number;rn char code;rn string checkCode = string.Empty;rnrn Random radom = new Random();rnrn for (int i = 0; i < 6; i++)rn rn number = radom.Next();rn if (number % 2 == 0)rn rn code = (char)('0' + (char)(number % 10));rn rn elsern rn code = (char)('A'+(char)(number%26));rn rn checkCode += code.ToString();rn rn //Response.Cookies.Add(new HttpCookie("CheckCode",checkCode));rn Session["CheckCode"] = checkCode;rn return checkCode;rn rnrn private void CreateCheckCodeImage(string checkCode)rn rn if (checkCode == null || checkCode.Trim() == String.Empty)rn rn return;rn rn System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling(checkCode.Length*12.5),22);rn System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image);rn tryrn rn //生成随机生成器rn Random random = new Random();rnrn //清空图片背景色rn g.Clear(Color.White);rnrn //画图片的背景噪音线rn for (int i = 0; i < 25; i++)rn rn int x1 = random.Next(image.Width);rn int x2 = random.Next(image.Width);rn int y1 = random.Next(image.Height);rn int y2 = random.Next(image.Height);rnrn g.DrawLine(new Pen(Color.GreenYellow), x1, y1, x2, y2);rn rnrn Font font = new System.Drawing.Font("Verdana", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));rn System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true);rn g.DrawString(checkCode, font, brush, 2, 2);rnrn //画图片的前景噪音点rn for (int i = 0; i < 80; i++)rn rn int x = random.Next(image.Width);rn int y = random.Next(image.Height);rnrn image.SetPixel(x, y, Color.FromArgb(random.Next()));rn rnrn //画图片的边框线rn g.DrawRectangle(new Pen(Color.Blue), 0, 0, image.Width - 1, image.Height - 1);rnrn System.IO.MemoryStream ms = new System.IO.MemoryStream();rn image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);rn Response.ClearContent();rn Response.ContentType = "image/Gif";rn Response.BinaryWrite(ms.ToArray());rn rn finallyrn rn g.Dispose();rn image.Dispose();rn rn rnrnrnrnrnrn在 使用<em>验证码</em>的页面 HTML 内 有rnrn [点击更新]rnrnrnrnrn在使用<em>验证码</em>的CS 文件内 有rnrnif (TextBox3.Text.Trim ().ToUpper () != Session["CheckCode"].ToString ())rn rn rn Response.Write (" ");rnrn return;rn rnrn但是,我发现 Session["CheckCode"] 的 内容和<em>验证码</em>图片显示的不一样,Session["CheckCode"] <em>总是</em>显示<em>验证码</em>图片上前<em>一个</em><em>验证码</em>字符串.请高手解答一下。谢谢。rnrnrn
为什么我的验证码不同步呢???
看图说话~~~~~~~~~~~~~~~~~~~~~~rn刚进入页面只有图,没有值rn刷新后rn[img=http://bbs.game.mop.com/attachments/month_0805/t1_1lTofpMM6Qny.gif][/img]rn再刷新后rn[img=http://bbs.game.mop.com/attachments/month_0805/t2_qNod7cMgpAw2.gif][/img]rn图上的数字<em>总是</em>比<em>session</em>的值快一拍rn显示页---rnrnrnrnseccode.php是生成图片的页,同时在这个页中把值存入<em>session</em>rn我试过用<em>一个</em>单独的页echo $_SESSION[];然后ajax这个页倒是可以和图片上的信息同步rn但是,js不是不安全么rn好像从显示页跳转到另<em>一个</em>也时才能收到<em>session</em>的值rn有什么办法让<em>session</em>的值同步呢?
【Session】Session的值总是丢失?为什么
web.config中设置如下:rnrnrnrn
我的验证码
希望大家喜欢,我就不要分了!
为什么Web页面验证码总是验证的上一次的
我在网上找了个java图片的<em>验证码</em>,但是我在页面验证的时候发现页面显示的<em>验证码</em>和<em>session</em>得到的<em>验证码</em>是相差一次,不知道<em>为什么</em>,我在网上看了哈! 说不能在页面验证。我想问下有没有什么办法可以让它在页面验证,或者说,谁有页面验证的图片<em>验证码</em>!!希望有的贴出哈,谢谢了。我重点就想在页面就验证了,不想经过struts来验证,因为有很多都要改。
验证码刷新时,session为什么不改变?
[size=14px]现在我点击刷新过<em>验证码</em>后,页面上echo出来的$_SESSION["check_checks"]值始终第一次的时候的值,以后再刷新<em>验证码</em>也不变,<em>为什么</em><em>session</em>值不能实时刷新呢,大家帮忙看一下,谢谢?(代码如下)rnrn<em>验证码</em>php:code.phprnrn页面部分:rn rn rnrnrnrn rnrnrnrnrnrn[/size]
为什么在firefox中不能获得验证码session
在ff中登录老是<em>验证码</em>不正确,发现<em>验证码</em>的<em>session</em>为空,但在ie里就正常,<em>为什么</em>这样?
python爬虫问题求解,为什么总是验证码错误?
[code=python]#coding=utf-8rnfrom bs4 import BeautifulSouprnimport urllib2rnimport sysrnimport timernimport requestsrnfrom PIL import Imagernreload(sys)rnsys.setdefaultencoding('utf-8')rntime=time.localtime()rn<em>session</em>=requests.<em>session</em>()rnuser_agent='Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0'rnheaders='User-Agent':user_agentrncap_url='http://www.jsgsj.gov.cn:58888/mini/netWebServlet.json?randImg=true&tmp='+str(time)rnhtml=<em>session</em>.get(cap_url,headers=headers)rnimg=html.contentrncookies=html.cookiesrnwith open('yanzhenma.jpeg','wb') as imgfile:rn imgfile.write(img)rnim = Image.open('yanzhenma.jpeg')rnim.show()rnyzm=raw_input()rnrnurl_company='http://www.jsgsj.gov.cn:58888/mini/netWebServlet.json?codeCheck=true&corpName=苏州&yzm='+str(yzm)rnhtml=<em>session</em>.get(url=url_company,headers=headers,cookies=cookies)rnpage=(html.text)rnprint page [/code]
project验证码project验证码project验证码project验证码project验证码
project<em>验证码</em>project<em>验证码</em>project<em>验证码</em>project<em>验证码</em>
js 验证码.rarjs 验证码.rarjs 验证码.rarjs 验证码.rarjs 验证码.rarjs 验证码.rarjs 验证码.rarjs 验证码.rarjs 验证码.rar
js <em>验证码</em>.rarjs <em>验证码</em>.rarjs <em>验证码</em>.rarjs <em>验证码</em>.rar
为什么需要验证码验证码是做什么用的??
请教高人,什么是<em>验证码</em>,<em>为什么</em>需要<em>验证码</em>?rn<em>验证码</em>是做什么用的?rnrn<em>为什么</em>发表个评论都要个<em>验证码</em>?rn既然有了<em>验证码</em><em>为什么</em>又不让人评论?rnrn给高分……
急~~~点击验证码更换新的验证码
这是我打开页面时获取<em>验证码</em>代码rnrn我想实现单击一下<em>验证码</em>后换一张新的<em>验证码</em>,是这么写的rnfunction getOther() rn var img =document.getElementById( "imgwd "); rn img.src= "servlet/ValidateServlet"+ new Date().getTime;rnrn这两个在同<em>一个</em>jsp中,现在img.src= "servlet/ValidateServlet"+ new Date().getTime;这个没好使,现在单击没有效果,哪位大侠帮帮忙~~~~~~
为什么我的Session总是过期?
我做了个用户登录的程序,每次用户注册后,用户名写入Session中rnrn<em>为什么</em>才几分钟,Session变量中就没有了值rnrn我希望这个Session永远不过期,应该如何写程序.rn我的文件在不同的目录,这个会不会有影响.
session验证码问题,刷新验证码session的值不变,求高人解答
php做<em>验证码</em>程序,原本好使,换服务器后,<em>验证码</em>再刷新,<em>验证码</em>变了,但是<em>session</em>还是第一次初始的值,怀疑是服务器的问题,有高人知道怎么回事吗?rnrnrn<em>验证码</em>代码checkimage.php页如下:rnHeader("Content-type: image/gif");rnrn$border = 0; //是否要边框 1要:0不要rn$how = 4; //<em>验证码</em>位数rn$w = $how*15; //图片宽度rn$h = 25; //图片高度rn$fontsize = 5; //字体大小rn$alpha = "ABCDEFGHIJKLMNPQRSTUVWXYZ"; //<em>验证码</em>内容1:字母rn$number = "123456789"; //<em>验证码</em>内容2:数字rn$randcode = ""; //<em>验证码</em>字符串初始化rnsrand((double)microtime()*1000000); //初始化随机数种子rnrn$im = ImageCreate($w, $h); //创建验证图片rnrn$bgcolor = ImageColorAllocate($im, 255, 255, 255); //设置背景颜色rnImageFill($im, 0, 0, $bgcolor); //填充背景色rnif($border)rnrn $black = ImageColorAllocate($im, 0, 0, 0); //设置边框颜色rn ImageRectangle($im, 0, 0, $w-1, $h-1, $black);//绘制边框rnrnrnfor($i=0; $i]的值还是“A67E”,无论我点击几回“看不清?换一组”,都是<em>验证码</em>图片改了,但是<em>session</em>的值都是初始值不改变,这是什么问题?求高人帮下忙。
为什么我的模拟登陆登陆时候验证码总是错误
"../servlet/UserLoginCheckInfoAction",rn "password"=>"456jj123",rn "OperatingSystem"=>"",rn "Browser"=>"",rn "user_id"=>"2015121613",rn "password"=>"19970826",rn "ranstring"=>file_get_contents("verify.txt"),rn "user_type"=>"student",rn "btn1"=>"",rn );rnrn rn $curl=curl_init();rn curl_setopt($curl,CURLOPT_USERAGENT,"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36");rn curl_setopt($curl,CURLOPT_REFERER,"http://jiaowu.em.swjtu.edu.cn/service/login.jsp?user_type=student");rn curl_setopt($curl,CURLOPT_COOKIEFILE,$cookie_file);rn curl_setopt($curl,CURLOPT_URL,$post_url);rn curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);rn curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,20);rn curl_setopt($curl,CURLOPT_POSTFIELDS,$array);rn curl_setopt($curl,CURLOPT_POST,1);rn curl_setopt($curl, CURLOPT_HEADER, 0);rn curl_setopt($curl, CURLOPT_RETURNTRANSFER, 0);rn $result =curl_exec( $curl);rn curl_close( $curl );rn echo "登陆成功";rnrnrn我已经保存了<em>session</em>,<em>为什么</em>还是<em>验证码</em>错误
判断输入值验证码
这是<em>一个</em>判断输入值<em>验证码</em>的实例,例子简单实用
请问一个session验证码丢失的问题
我的jsp注册页面上生成的<em>验证码</em>存在<em>session</em>中(进入注册页面的时候存的) 当表单提交的时候后,<em>session</em>中的<em>验证码</em>取不到,得到的<em>session</em>不是同<em>一个</em><em>session</em>,我的项目是struts+hibernate+tomcat。望高手帮我把情况分析下。谢谢!
一个session的问题:为什么我存储的值总比页面显示的验证码慢一步啊@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
if (Session["CheckCode"] != null)rn rn ViewState["code"] = Session["CheckCode"].ToString();rn Session["CheckCode"] = "";rn rn Response.Write (ViewState["code"]);rnrnrn if (mycode.Text.Trim() == ViewState["code"])这个判断总通不过.rnrn我看了一下输出的值<em>总是</em>与<em>验证码</em>图象不一样.就是慢了一步. 下回才显出 当前的这个<em>验证码</em>值.哎.郁闷啊........
session验证码问题,同一用户为什么有两个session
rnrn```rn <em>为什么</em>我登录的时候输入<em>验证码</em>和产生的<em>验证码</em>不匹配,打印了一下<em>session</em>发现生成<em>验证码</em>的<em>session</em>和登录时获取的<em>session</em>不是<em>一个</em>,<em>一个</em>用户不是应该只有<em>一个</em><em>session</em>吗,求解rn# 产生<em>验证码</em>的<em>session</em>rn// 将图像输出到客户端rn ServletOutputStream sos = response.getOutputStream();rn ByteArrayOutputStream baos = new ByteArrayOutputStream();rn ImageIO.write(image, "JPEG", baos);rn byte[] buffer = baos.toByteArray();rn response.setContentLength(buffer.length);rn sos.write(buffer);rn baos.close();rn sos.close();rn // 将<em>验证码</em>放到 <em>session</em> 中rn <em>session</em>.setAttribute("checkCode", new String(rands));rn System.out.println("1"+<em>session</em>);rnrnrn## 验证时的<em>session</em>rnprivate String name;rn private String password;rn private String checkcode;rn private String check;rn private HttpServletRequest request;rn private HttpSession <em>session</em>;rn rn public LoginAction() rn rn request =ServletActionContext.getRequest();rn <em>session</em> = request.getSession();rn rn public String execute() throws Exception rn String checkcode1=(String)<em>session</em>.getAttribute("checkCode");rn System.out.println("2"+<em>session</em>);rnrn这两个打印出来的<em>session</em>不同,求解怎么办rnrnrnrn```rnrn
session技术应用--验证码登录
后台生成<em>验证码</em>并往客户端和后台各发一份,进行下一步登录判断package cn.hncu.servlet;import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.IOException; import java.
验证码(用session 保存数字)
255){ fc = 255; } if(bc &gt; 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 Co...
session 实现校验验证码时限
写给自己看的 开发工具:idea 1. // 存入会话<em>session</em> HttpSession <em>session</em> = request.getSession(); String attrName = &quot;code&quot;; <em>session</em>.setAttribute(attrName, code); 2. // 定时五分钟删除<em>session</em>里的内容 public void removeAttrbut...
关于验证码session的问题
image.jsprnrnrn255) fc=255;rnif(bc>255) bc=255;rnint r=fc+random.nextInt(bc-fc);rnint g=fc+random.nextInt(bc-fc);rnint b=fc+random.nextInt(bc-fc);rnreturn new Color(r,g,b);rnrn%>rnrnregister.jsprnrn输入<em>验证码</em>:rnrnrn rnrn<em>验证码</em>:rn
如何利用Session产生验证码?
哪位高手能给个利用Session保存<em>验证码</em>的例子吗?希望能够写的详细点...谢谢
跪求 session保存验证码的问题
我有个image.jsp ,里面随即产生的<em>验证码</em>,保存到<em>session</em> (validate)中。rn然后我有个login.jsp页面rnString ss=(String)<em>session</em>.getAttirbute("validate");rnrnrn显示image产生的随机数.rnrn然后我验证他在登陆时候 输入的<em>验证码</em>是否正确用 js函数rnfunction validate(a)rn if($('ch').value!=a)rn rn alert('<em>验证码</em>错误');rn return false;rn rnrn当用户点确认时提交rnrn现在我遇到的问题是,rn因为 那随机数 是保存在<em>session</em>中的,rn比如用户第一次到login.jspy页面时产生的随机数是 1423rn然后我刷新login.jsp页面,页面上显示的是 2235,但是<em>session</em>中的值还是没有改变(1423),rn然后用javaScript判断的时候肯定不成立, 我知道是<em>session</em>的问题,但是没什么解决方案,rn各位帮忙了....rnrn
验证码| 在一般处理程序中使用Session
注意:在一般处理程序中不能直接使用Session。需要继承IRequiresSessionState接口才可以使用Session  IRequiresSessionState是<em>一个</em>标记接口,没有实际用处。在一般处理程序中,为了提高性能,在asp.neet应用程序生命周期中,会判断ValidCodeashx这个类型是否有实现这个IRequiresSessionState接口,如果有实现这个接口,,
验证码以及Cookie和Session机制
1、<em>验证码</em>的作用防止机器暴力破解用户名和密码(或者是其他可以多次提交的表单)。因此为了安全起见,通常<em>验证码</em>的验证并不会交由前端来进行,而是由后端来进行检验。同时<em>验证码</em>的样子也会尽量千奇百怪,让机器不能够识别。2、<em>验证码</em>的机制前端:前端网页通过<em>一个</em>URL来对后端进行请求,通常会给这个请求带上<em>一个</em>时间戳或者是随机数。 后端:接收到前端的request,后端会先生成<em>一个</em>随机数(通常4位),然后把该随机数
session 注册简单验证码的实现
一:简单实现界面: 二:代码实现 index.jsp原码
Session 验证码登陆问题,帮忙
我要在我做的<em>一个</em>页面中登陆到其它网站的rnrn比如就CSDN的登陆,我想在我做的网页中做<em>一个</em>登陆界面能登陆到CSDNrnrn但哪个<em>验证码</em> <em>总是</em>会不对 我知道<em>验证码</em>要和Session中的一致rnrn现在就是说,怎么让网站为我这个页面产生Session
sp3 iis 验证码总是错误
我保证用户名密码输入正确,代码也没问题
Session案例一次性验证码登录
<em>验证码</em>的实现原理: 在<em>一个</em>Servlet中生成验证,并把<em>验证码</em>上的数据保存在Session,用户提交<em>验证码</em>之后,会提交给另外<em>一个</em>Servlet程序。在获取用户提交数据的Servlet中的从Session中把<em>验证码</em>取出,在取出的同时从Session中把<em>验证码</em>删除。1.注册页面:register.jsp
WEB——Session案例一之验证码
实现<em>一个</em>如下的<em>验证码</em>的案例;大致思路如下: 需要的jar包可以通过如下网址获取:login.jsp
(四)验证码(图文验证+session
    在前面产生的随机字符串的基础之前,这个主要是画出一张图片,然后将字符串放进来,形成一张图片。以下的代码是产生随机数字,英文,中文的图文验证代码。image.aspx.csnamespace Graphic_verification_code { public partial class image : System.Web.UI.Page { protect...
SONY_VPCP11系列蓝牙驱动下载
SONY_VPCP11系列蓝牙驱动 SONY_VPCP11_win7_64_Bluetooth 相关下载链接:[url=//download.csdn.net/download/u013915410/6993561?utm_source=bbsseo]//download.csdn.net/download/u013915410/6993561?utm_source=bbsseo[/url]
软件自动安装管理器下载
软件自动安装管理器 相关下载链接:[url=//download.csdn.net/download/zczc333/7529627?utm_source=bbsseo]//download.csdn.net/download/zczc333/7529627?utm_source=bbsseo[/url]
51单片机C语言应用开发三位一体实战精讲 程序代码+原理图下载
关于51单片机C语言方面的源码,一共有15个实例,供大家下载方便学习。 相关下载链接:[url=//download.csdn.net/download/gxcmeluopeng/8271247?utm_source=bbsseo]//download.csdn.net/download/gxcmeluopeng/8271247?utm_source=bbsseo[/url]
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池
我们是很有底线的