The following table describes the CFML code in Application.cfm and its function:
Code
<cfapplication name="Orders"
sessionmanagement="Yes"
> loginStorage="Session"
<cfif IsDefined("Form.logout")>
<cflogout>
</cfif>
<cflogin>
<cfif NOT IsDefined("cflogin")>
<cfinclude template="loginform.cfm">
<cfabort>
<cfelse>
<cfif cflogin.name IS "" OR
cflogin.password IS "">
<cfoutput>
<H2>You must enter text in both the
User Name and Password fields</H2>
</cfoutput>
<cfinclude template="loginform.cfm">
<cfabort>
<cfelse>
<cfquery name="loginQuery"
dataSource="CompanyInfo">
SELECT UserID, Roles
FROM LoginInfo
WHERE
UserID = '#cflogin.name#'
AND Password = '#cflogin.password#'
</cfquery>
<cfif loginQuery.Roles NEQ "">
<cfloginuser name="#cflogin.name#"
Password = "#cflogin.password#"
roles="#loginQuery.Roles#">
<cfelse>
<cfoutput>
<H2>Your login information is not
valid.<br>
Please Try again</H2>
</cfoutput>
<cfinclude template="loginform.cfm">
<cfabort>
362
Chapter 16: Securing Applications
Description
Identifies the application, enables the
Session scope, and enables storing login
information in the Session scope.
If the user just submitted the logout form,
logs out the user. The following
tag runs as a result.
Executes if there is no logged-in user.
Tests to see if the user has submitted a
login form. If not, uses
cfinclude
display the form. The built-in
variable exists and contains the user name
and password only if the login form used
j_username and j_password for the
input fields.
The
tag prevents processing of
cfabort
any code that follows on this page.
Executes if the user submitted a login
form.
Tests to make sure that both name and
password have data. If either variable is
empty, displays a message, followed by
the login form.
The
tag prevents processing of
cfabort
any code that follows on this page.
Executes if the user submitted a login form
and both fields contain data.
Uses the cflogin structure's name and
entries to find the user record in
password
the database and get the user's roles.
If the query returns data in the Roles field,
logs in the user using the user's name and
password and the Roles field from the
database. In this application, every user
must be in some role.
Executes if the query did not return a role.
If the database is valid, this means there
was no entry matching the user ID and
password. Displays a message, followed
by the login form.
The
tag prevents processing of
cfabort
any code that follows on this page.
.
cflogin
to
cflogin
Need help?
Do you have a question about the COLDFUSION MX 61-DEVELOPING COLDFUSION MX and is the answer not in the manual?
Questions and answers