Font font = new System Drawing Font( Arial (System Drawing FontStyle Bold | System Drawing FontStyle Italic)) System Drawing Drawing D LinearGradientBrush brush = new System Drawing Drawing D LinearGradientBrush(new Rectangle( image Width image Height) Color Blue Color DarkRed f true) g DrawString(checkCode font brush ) //画图片的前景噪音点 for(int i= i<i++) { int x = random Next(image Width) int y = random Next(image Height) image SetPixel(x y Color FromArgb(random Next())) } //画图片的边框线 g DrawRectangle(new Pen(Color Silver) image Width image Height ) System IO MemoryStream ms = new System IO MemoryStream() image Save(ms System Drawing Imaging ImageFormat Gif) Response ClearContent() Response ContentType = image/Gif Response BinaryWrite(ms ToArray()) } finally { g Dispose() image Dispose() } } } 在你要显示验证码的窗体中添加一个image控件 并命名为imgCheckCode 用于显示验证码 再添加一个lable 并命名为lblMessage 用于显示错误信息 然后在该窗体的Page_Load中添加 this imgCheckCode ImageUrl = checkCode aspx 在登录页面的登录按钮的处理事件中使用以下代码判断验证码 private void btnLogin_Click(object sender System Web UI ImageClickEventArgs e) { if(Request Cookies[ checkCode ] == null) { lblMessage Text = 您的浏览器设置已被禁用 Cookies 您必须设置浏览器允许使用 Cookies 选项后才能使用本系统 lblMessage Visible = true return } if(String Compare(Request Cookies[ checkCode ] Value txtCheckCode Text true) != ) { lblMessage Text = 验证码错误 请输入正确的验证码 lblMessage Visible = true return } } 这样就能实现你所要的验证码验证了 lishixinzhi/Article/program/net/201311/13119
<%
randomize
yzm=int(8999*rnd()+1000)
randomize
yzm_skin=int(3*rnd()+1)
%>
<%
a=int(yzm/1000)
b=int((yzm-a*1000)/100)
c=int((yzm-a*1000-b*100)/10)
d=int(yzm-a*1000-b*100-c*10)
response.write "<img align=top height=15 border=0 src=yzm/"&yzm_skin&"/"&a&".gif><img align=top height=15 border=0 src=yzm/"&yzm_skin&"/"&b&".gif><img align=top height=15 border=0 src=yzm/"&yzm_skin&"/"&c&".gif><img align=top height=15 border=0 src=yzm/"&yzm_skin&"/"&d&".gif>"
%>
if cint(form1.yzm.value)<>yzm1 then
alert("输入的验证码不正确!")
else
form1.submit
end if
大部分就是这三个结构.有点乱.呵呵
【九天学会ASP之第九天】
学习目的:整体总结,实例参考。
一、会员登录系统。
首先,有会员系统的任何程序都会用到检测是不是用户已经登陆这个步骤。这就用到了SESSION组件,下面我们看一个代码来说明。
<%
session("isadmin")="yes"
%>
这句话的意思就是在session里面定义一个islogin字符串变量,值为"yes",直接可以赋值,不需要声明。是不是很简单?
如果我们做管理员登陆系统的话,首先是一段检测是不是管理员
if 是 then
session("isadmin")=yes"
else
session("isadmin")="no"
end if
在每一个需要管理员才能看的页面最前面加上
<%
if session("isadmin")<>"yes"then
response.redirect "login.asp"
%>
这样一般用户就无法打开这个页面。解释一下response.redirect,它是转向的意思,后面的"login.asp"就是转向的文件。这样没有登陆的管理员是无法看到后面的内容的。
下面总结一下
response组件基本就是用到response.write (),response.redirect() 分别是写字符串和转向的作用
request基本就是request.form(),request.querystring() 分别是接受post,get方法传来的信息
二、添加验证码。
为网站登录会员系统或注册会员系统添加验证码可以有效防止恶意破解密码或刷贴等。
验证码编写原理跟上面讲的会员登录系统的原理差不多一样,也是用到session来。这里我们不需要去了解太多,只要懂得怎样把别人写好的组件套到自己的网站中使用即可。
1、先下载ASP验证码组件,并解压。
2、复制imgchk文件夹与info.asp到网站目录。
3、在登录页开头插入<!--#include file="info.asp"-->并在需要验证码处插入<input name='validatecode' type='text' size='5'> <%call getcode()%>
4、在登录后检测页加入<%If Trim(Request.Form("validatecode"))=Empty or Trim(Session("cnbruce.com_ValidateCode"))<>Trim(Request.Form("validatecode")) Then
response.write "<script language=JavaScript>" &chr(13) &"alert('请输入正确的验证码')" &"history.back()" &"</script>"
Response.End
end if
%>
好了,九天到今天就结束了,我想我这个教程只是让大家入门的,大家觉得写的浅也不要责怪必尽不可能初学者和高手都照顾到吧,大家一定要好好研究,通了这个程序,你会发现你已经会ASP了。谢谢大家的支持!大家有问题可以在我的博客http://hi.baidu.com/fangchenxi2010里面留言,希望大家帮忙多多宣传本站,转贴本站文章的也请著名出处,谢谢合作。最后附上本文章中的实例文件包,供大家下载后参考用的。点击下载
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)