如何删除SESSION中的验证码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除SESSION中的验证码相关的知识,希望对你有一定的参考价值。

我做的是一个投票系统 用了双验证码 session ip限制 但是无法防止刷票 下面是代码
验证码获取部分===========
Response.Write("<img src=ChkCode/validatecode.asp? alt='看不清?请点击刷新验证码' style='cursor : pointer;' onclick='this.src+=Math.random()' id='getcode2'/> 输入验证码: <input name='Code2' size='20' maxlength='4' /> 必填")
Response.Write("<br>")
Response.Write("<img src=getcode2.asp? /> 输入4位认证码: <input name='Code' size='20' maxlength='4' /> 必填")
End Sub
表单递交部分============
<form id="form1" name="form1" method="post" action="vote_do.asp">
<input name="q" type="hidden" id="q" value="<%=q%>" />
<input type="submit" name="Submit" value=" 提 交 问 卷 " /> <br /><br />

</form>
<% session.Contents.RemoveAll() %> 线程清除 不知道是否对===========

为了让自己和大家登陆的时候方便一点,可以考虑删除登陆验证码!

(一)删除用户登陆验证码,只需要用户名和密码就可以登陆!
1.打开 common/checkUser.asp 去掉以下这两段:
程序代码 第26行
IF validate="" Then
ReInfo(0)="错误信息"
ReInfo(1)="<b>请输入登录验证码</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="WarningIcon"
login=ReInfo
logout(false)
exit function
end if

程序代码 第35行(前面修改后)
IF cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="ErrorIcon"
login=ReInfo
logout(false)
exit function
end if

2.打开 login.asp。去掉程序代码 第49行:

< label>验证码:<input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%></label><br/>

[[[[经过本人验证,完全可行,只是注意最后一步,不要错删“< label>用户名”哦,我第一次改的时候就删除错了,登陆时候验证码还在,用户名那匡没了!所以要做好备份哈,更改哪个文件之前先把那个文件下载下来!]]]]

(二)去掉留言本的验证码: (无此插件的朋友跳过!看清楚哦,是留言本,不是回复评论的时候!)

打开 Plugins/GuestBook/bookaction.asp 去掉
程序代码 程序代码
IF cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
showmsg "留言发表错误信息","<b>验证码有误,请返回重新输入</b><br/><a href="http://www.163er.com/"LoadMod.asp?plugins=GuestBookForPJBlog"">请返回重新输入</a>", "ErrorIcon","plugins"
exit function
end if

打开 Plugins/GuestBook/guestbook.asp 去掉 无此插件的朋友可以跳过
程序代码 程序代码
<tr><td align="right" width="70"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%></td></tr>
(三)其它地方的验证码也可去掉:

打开 blogcomm.asp 去掉
程序代码 第95行
IF (memName=empty or blog_validate=true) and cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="评论发表错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="ErrorIcon"
postcomm=ReInfo
exit function
end if

(四)去除评论的验证码?(这个我没试验过,我是转别人的,但是看代码是去除评论的!有空我要试验一下)

3.打开 register.asp 去掉
下面这段程序代码我的源码里没有,也就不用删除了
IF (memName=empty or blog_validate=true) and cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="评论发表错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="ErrorIcon"
postcomm=ReInfo
exit function
end if

程序代码
<tr><td align="right" width="85"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%> <font color="#FF0000"> *</font> 请输入验证码</td></tr>

程序代码
IF cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">单击返回</a>"
ReInfo(2)="ErrorIcon"
register=ReInfo
exit function
end if

(五)这个注册码是干吗的?(也没试验过,也没看明白!)

4.打开 class/cls_article.asp 去掉
程序代码
<%if memName=empty or blog_validate=true then%><tr><td align="right" width="70"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%></td></tr><%end if%>

打开 common/function.asp 去掉
程序代码
'*************************************
'获得注册码
'*************************************
Function getcode()
getcode= "<img src="http://www.163er.com/"common/getcode.asp"" alt="""" style=""margin-right:40px;""/>"
End Function

(六)去除申请链接处的验证码!

打开 /BlogLink.asp文件 去掉
程序代码
<tr><td align="right" width="70"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="link_validate" type="text" size="4" class="userpass" maxlength="4"/><%=getcode()%></td></tr>

(七)这个删除不知道是做什么用的!

最后删除 common/GetCode.asp

(八)不删除验证码,但可以修改它,下面是修改验证码的步骤!

PJBlog里的默认字母验证码有大小写限制,也就是有字母时,输入的一定要是大写的,如果输入了小写的,只能再来,而且验证码在这也显得麻烦,参照网上一些资料,修改了PJBlog的验证码.
在common/Getcode.asp文件是生成验证码的,我们只要在这稍微修改就可以
看到16,17,18行
Const cOdds = 4 ' 杂点出现的机率
Const cAmount = 36 ' 文字数量
Const cCode = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"

网上比较多的修改法:

修改验证码,使它永远只出现四个“0”
===================================================
在个人Blog中使用验证码没什么意义,PJBlog后台又没有关闭验证码的选项,所以最好的办法就是让它只显示最简单的符号,本站把验证码全部改为4个“0”:
找到common\GetCode.asp,修改“Dim i, ii, iii”下面这段为:
Const cOdds = 0 ' 不出现杂点
Const cAmount = 1 ' 就取一个符号,默认是0
Const cCode = "0123456789" '这一行可以不用改的

使系统自动填写验证码(再复杂的验证码也不用手工输入了,呵呵(0927)
===================================================
在Blog根目录新建一个“*.asp”文件,在里面填写以下代码:
<script>if(parent.document.all.validate)parent.document.all.validate.value="<%=Session("GetCode")%>";</script>
然后在footer.asp的最上面插入一句:
<iframe frameborder="no" height=0 width=0 src="*.asp"></iframe
参考技术A 1.打开 common/checkUser.asp 去掉以下这两段:
程序代码 第26行
IF validate="" Then
ReInfo(0)="错误信息"
ReInfo(1)="<b>请输入登录验证码</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="WarningIcon"
login=ReInfo
logout(false)
exit function
end if

程序代码 第35行(前面修改后)
IF cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="ErrorIcon"
login=ReInfo
logout(false)
exit function
end if

2.打开 login.asp。去掉程序代码 第49行:

< label>验证码:<input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%></label><br/>

[[[[经过本人验证,完全可行,只是注意最后一步,不要错删“< label>用户名”哦,我第一次改的时候就删除错了,登陆时候验证码还在,用户名那匡没了!所以要做好备份哈,更改哪个文件之前先把那个文件下载下来!]]]]

(二)去掉留言本的验证码: (无此插件的朋友跳过!看清楚哦,是留言本,不是回复评论的时候!)

打开 Plugins/GuestBook/bookaction.asp 去掉
程序代码 程序代码
IF cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
showmsg "留言发表错误信息","<b>验证码有误,请返回重新输入</b><br/><a href="http://www.163er.com/"LoadMod.asp?plugins=GuestBookForPJBlog"">请返回重新输入</a>", "ErrorIcon","plugins"
exit function
end if

打开 Plugins/GuestBook/guestbook.asp 去掉 无此插件的朋友可以跳过
程序代码 程序代码
<tr><td align="right" width="70"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%></td></tr>
(三)其它地方的验证码也可去掉:

打开 blogcomm.asp 去掉
程序代码 第95行
IF (memName=empty or blog_validate=true) and cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="评论发表错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="ErrorIcon"
postcomm=ReInfo
exit function
end if

(四)去除评论的验证码?(这个我没试验过,我是转别人的,但是看代码是去除评论的!有空我要试验一下)

3.打开 register.asp 去掉
下面这段程序代码我的源码里没有,也就不用删除了
IF (memName=empty or blog_validate=true) and cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="评论发表错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">请返回重新输入</a>"
ReInfo(2)="ErrorIcon"
postcomm=ReInfo
exit function
end if

程序代码
<tr><td align="right" width="85"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%> <font color="#FF0000"> *</font> 请输入验证码</td></tr>

程序代码
IF cstr(lcase(Session("GetCode")))<>cstr(lcase(validate)) then
ReInfo(0)="错误信息"
ReInfo(1)="<b>验证码有误,请返回重新输入</b><br/><a href=""javascript:history.go(-1);"">单击返回</a>"
ReInfo(2)="ErrorIcon"
register=ReInfo
exit function
end if

(五)这个注册码是干吗的?(也没试验过,也没看明白!)

4.打开 class/cls_article.asp 去掉
程序代码
<%if memName=empty or blog_validate=true then%><tr><td align="right" width="70"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="validate" type="text" size="4" class="userpass" maxlength="4"/> <%=getcode()%></td></tr><%end if%>

打开 common/function.asp 去掉
程序代码
'*************************************
'获得注册码
'*************************************
Function getcode()
getcode= "<img src="http://www.163er.com/"common/getcode.asp"" alt="""" style=""margin-right:40px;""/>"
End Function

(六)去除申请链接处的验证码!

打开 /BlogLink.asp文件 去掉
程序代码
<tr><td align="right" width="70"><strong>验证码:</strong></td><td align="left" style="padding:3px;"><input name="link_validate" type="text" size="4" class="userpass" maxlength="4"/><%=getcode()%></td></tr>

(七)这个删除不知道是做什么用的!

最后删除 common/GetCode.asp

(八)不删除验证码,但可以修改它,下面是修改验证码的步骤!

PJBlog里的默认字母验证码有大小写限制,也就是有字母时,输入的一定要是大写的,如果输入了小写的,只能再来,而且验证码在这也显得麻烦,参照网上一些资料,修改了PJBlog的验证码.
在common/Getcode.asp文件是生成验证码的,我们只要在这稍微修改就可以
看到16,17,18行
Const cOdds = 4 ' 杂点出现的机率
Const cAmount = 36 ' 文字数量
Const cCode = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"

网上比较多的修改法:

修改验证码,使它永远只出现四个“0”
===================================================
在个人Blog中使用验证码没什么意义,PJBlog后台又没有关闭验证码的选项,所以最好的办法就是让它只显示最简单的符号,本站把验证码全部改为4个“0”:
找到common\GetCode.asp,修改“Dim i, ii, iii”下面这段为:
Const cOdds = 0 ' 不出现杂点
Const cAmount = 1 ' 就取一个符号,默认是0
Const cCode = "0123456789" '这一行可以不用改的

使系统自动填写验证码(再复杂的验证码也不用手工输入了,呵呵(0927)
===================================================
在Blog根目录新建一个“*.asp”文件,在里面填写以下代码:
<script>if(parent.document.all.validate)parent.document.all.validate.value="<%=Session("GetCode")%>";</script>
然后在footer.asp的最上面插入一句:
<iframe frameborder="no" height=0 width=0 src="*.asp"></iframe>
参考技术B Request.ServerVariables("HTTP_X_FORWARDED_FOR")

防止Ip代理本回答被提问者采纳
参考技术C 是哪个里面的SESSION?ASP?JSP?

以上是关于如何删除SESSION中的验证码的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Flutter 手机身份验证中删除验证码

如何使用 javascript 从 Firebase 电话身份验证中删除验证码?

thinkphp如何获取session中的验证码

Session--验证码案例(Java)

如何删除 Django HTML 模板中的 request.session 变量?

按键精灵脚本中如何自动识别并输入验证码