文章作者 : linkfoxo [ webmaster@cfwindow.com ] Web URL : http://www.cfwindow.com
上载日期 : 2001-01-03
第一节: 基本认证
(从这个连接下载本课程所需要的原代码.
http://www.cfvault.com/downloads/tutorials_files/the_guide_to_coldfusion_login_systems.zip)
首先在ODBC管理器里面做一个Datasource叫'Database'. 用的*.MDB文件在上面下载的原代码里面.
基本的登录系统包括: 一个带有两个Form fields的页面(一个是用户名,另一个是密码) 将参数传
递给第二个页面 , 第二个页面将得到的参数核对数据库查询进行验证.
第一个页面的原代码(login.cfm):
<HTML>
<HEAD>
<TITLE>Login page</TITLE>
</HEAD>
<BODY>
<FORM NAME="LoginForm" ACTION="results.cfm" METHOD="POST">
Login: <INPUT TYPE="TEXT" MAXLENGTH="10" NAME="UserID"><BR>
PassWord: <INPUT TYPE="PASSWORD" MAXLENGTH="10" NAME="Password"><BR><BR>
<BR>
<INPUT type="submit" value="Login">
</FORM>
</BODY>
</HTML>
使用'MAXLENGTH'限制用户输入过长的信息
第二个页面的原代码(results.cfm):
<HTML>
<HEAD>
<TITLE>Result page</TITLE>
</HEAD>
<BODY>
<CFQUERY name="CheckUser" datasource="Database">
SELECT UserID, Password
FROM passwords
WHERE UserID = '#Form.UserID#'
</CFQUERY>
<!-- is the username present in the database? -->
<CFIF CheckUser.RecordCount GREATER THAN 0>
<!--- Passwords are not case-sensitive in this application
(use compare() if you want to check case) --->
<CFIF CheckUser.PassWord IS Form.PassWord>
<CFOUTPUT>
Welcome #Form.UserID#!
</CFOUTPUT>
<CFELSE>
You mistyped the password!
</CFIF>
<CFELSE>
<CFOUTPUT>
Sorry , no user named #Form.UserID# here.
</CFOUTPUT>
</CFIF>
</BODY>
</HTML>
过程很简单:
在第一个cfif中我们查询用户是否存在. 这样做是为了告诉用户如果被拒绝登陆问题是出现在那里.
在第二个Cfif中我们使用的比较操作符号是"is".表明检查口令不是大小写敏感的.如果口令的检查是
大小写敏感的,请使用compare函数来检查.
Results.cfm 显示出登陆处理的结果.
(--待续--)
|