I don't think hyphens are valid in variable names... so make e-mail
email and you should be ok.

J.J.

On 8/8/07, Jason Hunter <[EMAIL PROTECTED]> wrote:
> Hi,
>
> This is my first time ever posting to a forum. I am just starting with 
> Coldfusion. I created a form that would validate the form field upon 
> submission. Everything worked until I tried to enter an email address to my 
> form.
>
> If I left all fields blank, the Required error would show.
>
> If I inputted any thing into the Username or Password fields, it would check 
> against the regular expression.
>
> If I leave the email field blank, the Required error would show. But if I 
> enter anything into the email field that is when I get the error "Element E 
> is undefined in FORM."
>
> I am thinking it has something to do that error part of the array is blank. 
> But it is blank to begin with then it is populated and the form is first 
> displayed.
>
> Below is the code for the page. Please any help would be greatly appreciated.
>
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
> "http://www.w3.org/TR/html4/loose.dtd";>
> <html>
> <head>
> <title>RSO Membership Sign-up</title>
> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
> <link href="../style/default2.css" rel="stylesheet" type="text/css">
> <style type="text/css">
> <!--
> @import url("../style/form.css");
> -->
> </style>
> </head>
>
> <body>
> <!---
> <cfcache action="cache" timespan="#createTimeSpan(0, 5, 0, 0)#">
> --->
> <!--- Set Form Variables to Validate --->
> <cfparam name="FORM.m_username" default="">
> <cfparam name="FORM.m_password" default="">
> <cfparam name="FORM.m_password_verify" default="">
> <cfparam name="FORM.m_email" default="">
> <cfparam name="FORM.submit" default="">
> <!--- Database Variables --->
> <cfset query = "get_fields">
> <cfset dsn = "rsodb">
> <cfset table = "m_list_form">
> <cfset orderby = "a_list_order">
> <!--- Query --->
> <cfquery name="#query#" datasource="#dsn#">
> SELECT *
> FROM #table#
> ORDER BY #orderby# ASC;
> </cfquery>
> <!--- Array --->
> <cfset forminput = arraynew(2)>
> <cfloop query="#query#">
> <cfset forminput[currentRow][1] = a_list_order>
> <cfset forminput[currentRow][2] = b_list_fieldname>
> <cfset forminput[currentRow][3] = c_list_label>
> <cfset forminput[currentRow][4] = d_list_defaultvalue>
> <cfset forminput[currentRow][5] = e_list_errors>
> <cfset forminput[currentRow][6] = f_list_inputtype>
> </cfloop>
> <!--- Append Form Errors --->
> <cfif FORM.submit EQ "Submit">
>
> <cfif Len(trim(FORM.m_username)) EQ 0>
> <cfset forminput[1][5] = "REQUIRED.">
> <cfelse>
> <cfset ckUsername = REFindNoCase("^[a-zA-Z]([_a-zA-Z0-9-]+)", 
> trim(FORM.m_username), 1, "True")>
> <cfif ckUsername.len[1] LT len(trim(FORM.m_username))>
> <cfset forminput[1][5] = "USE ONLY LETTERS, NUMBERS, HYPENS, OR UNDERSCORES.">
> <cfelse>
> <cfset forminput[1][4] = FORM.m_username>
> </cfif>
> </cfif>
>
> <cfif Len(trim(FORM.m_password)) EQ 0>
> <cfset forminput[2][5] = "REQUIRED.">
> <cfelse>
> <cfset ckPassword = REFindNoCase("^[a-zA-Z0-9]([a-zA-Z0-9]+)", 
> trim(FORM.m_password), 1, "True")>
> <cfif ckPassword.len[1] LT len(trim(FORM.m_password))>
> <cfset forminput[2][5] = "USE ONLY LETTER AND NUMBERS.">
> <cfelse>
> <cfset forminput[2][4] = FORM.m_password>
> </cfif>
> </cfif>
>
> <cfif Len(trim(FORM.m_password_verify)) EQ 0>
> <cfset forminput[3][5] = "REQUIRED.">
> <cfelse>
> <cfset ckPasswordVerify = REFindNoCase("^[a-zA-Z0-9]([a-zA-Z0-9]+)", 
> trim(FORM.m_password_verify), 1, "True")>
> <cfif ckPasswordVerify.len[1] LT len(trim(FORM.m_password_verify))>
> <cfset forminput[3][5] = "USE ONLY LETTER AND NUMBERS.">
> <cfelse>
> <cfset forminput[3][4] = FORM.m_password_verify>
> </cfif>
> </cfif>
>
> <cfif Len(trim(FORM.m_email)) EQ 0>
> <cfset forminput[4][5] = "REQUIRED.">
> <cfelse>
> <cfset ckEmail = REFindNocase("^[_a-z0-9-]+(\.[_a-z0-9-]+)[EMAIL 
> PROTECTED](\.[a-z0-9-]+)*\.(([a-z]{2,3})|(aero|coop|info|museum|name))$", 
> trim(FORM.m_email), 1, "True")>
> <cfif ckEmail.len[1] LT len(trim(FORM.e-mail))>
> <cfset forminput[4][5] = "NOT A VALID EMAIL ADDRESS.">
> <cfelse>
> <cfset forminput[4][4] = FORM.m_email>
> </cfif>
> </cfif>
>
> </cfif>
>
> <cfset num_inputs = arraylen(forminput)>
>
> <!--- Form Output --->
> <form name="m_signup" id="m_signup" action="m_signup.cfm" method="post">
> <cfloop index="row" from="1" to="#num_inputs#">
> <cfoutput>
> <label for="#forminput[row][2]#">#forminput[row][3]#</label>
> <input id="#forminput[row][2]#" name="#forminput[row][2]#" 
> value="#forminput[row][4]#" type="#forminput[row][6]#"><br>
> <label for="empty"></label>
> <span class="error">#forminput[row][5]#</span><br>
> </cfoutput>
> </cfloop>
> <cfinclude template="mtype_list.cfm">
> <label for="submit">&nbsp;</label>
> <button type="submit" id="submit" name="submit" 
> value="submit">Submit</button><br>
> </form>
> </body>
> </html>
>
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Check out the new features and enhancements in the
latest product release - download the "What's New PDF" now
http://download.macromedia.com/pub/labs/coldfusion/cf8_beta_whatsnew_052907.pdf

Archive: 
http://www.houseoffusion.com/groups/CF-Newbie/message.cfm/messageid:2992
Subscription: http://www.houseoffusion.com/groups/CF-Newbie/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.15

Reply via email to