required form input.

Posted on 2003-11-24
Last Modified: 2012-05-04
I have a e-mail form in my flash that is sent when the send button is pressed. How do I require a value in phone and email text fields before the email can be sent?
Question by:apwbe
  • 3
LVL 39

Expert Comment

Comment Utility
do you mean you want to check if the fields are not empty.

then simply

if ((phoneField.text != ") && (emailField.text != "")) {
do whatever
} else {
alert message

where phoneField and emailField are the instance names not variables of your input text fields, and alert message is as it says.

Expert Comment

Comment Utility
The first thing you would need to do is set the variable name or instance name to something like "phone_txt".
In your actionscript to require a value, you could use this code:

on (release){
      if (_root.phone_txt.length < 8) {                                     // If less than 8 digits is entered in the text box, the message below will apear
            _root.message = "The phone number you have entered is not valid"
      } else {
            // Add your code in here

If you have any problems, questions or comments feel free to let me know.



Expert Comment

Comment Utility
Here is a better way to do what your trying to achieve:

on (release) {
     if (!this._parent.phonenumber.length) {
          this._parent.status = "Please enter a phone number";
     } else {
          if (! ||
     "@") == -1 ||
     ".") == -1 ||
     "com") == -1) {
               this._parent.status = "Please enter a valid email";
          } else {
               if ( < 7) {
                    this._parent.status = "Please enter a valid email";
               } else {
                 // Rest of your code goes here

Author Comment

Comment Utility
Sorry for taking so long getting back on this. Been kinda rushed. I tried the solutions above and probably did not get the code right as I could not get them to work.

My flash form passes the values to an .asp that handles sending the email maybe I should put the checks in the .asp instead of the flash mov.. Anyway here is the code for sending the values to the .asp.

on (Release) {
_parent.getURL("mail_form.asp", "_new", "POST");      

Here is the code in the .asp


Body = "Name: "& request("name") & vbcrlf
Body = Body & "From: "& request("from") & vbcrlf
Body = Body & "Phone: "& request("phone") & vbcrlf
Body = Body & "Destination: "& request("destination") & vbcrlf
Body = Body & "Arrive: "& request("arrive") & vbcrlf
Body = Body & "Depart: "& request("depart") & vbcrlf
Body = Body & "Message: "& vbcrlf & request("comments")

Set Mail = Server.CreateObject("Persits.MailSender")
            ' enter valid SMTP host
            Mail.Host = "localhost"

            Mail.From = request("from")  ' From address
            Mail.AddAddress ""            
            ' message subject
            Mail.Subject = "Reservation/Info Request"
            ' message body
            Mail.Body = Body

            strErr = ""
            bSuccess = False
            On Error Resume Next ' catch errors
            Mail.Send      ' send message
            If Err <> 0 Then ' error occurred
                  strErr = Err.Description
                  bSuccess = True
            End If


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">


<body bgcolor="#FFFFFF" text="#000066" link="#0000CC" vlink="#0000CC" alink="#0000CC">

<script languages="javascript">

<div align="center">
<p><font face="Verdana" size="2" color="#000080"> <font face="Arial, Helvetica, sans-serif" size="4"><b>Thank you,<br><br>Your reservation/info request has been sent. We will be in contact soon.<br><br>Warren Elkins<br>Mexico-Bound</b></font></font></p>
<p><b><font face="Arial, Helvetica, sans-serif" size="4" color="#000080">To
Return To Flash Page</font></b></p>
<p><b><font face="Arial, Helvetica, sans-serif" size="4" color="#000080"><a href="fz_jt020.html">Click
Here</a> </font></b> </p>

Here is a link to the site. Look under reservations.

Accepted Solution

OBCT earned 200 total points
Comment Utility
on (release) {
                 myEmail = new LoadVars();
        = name;               // name should be the variable name of your input boxes. And the same for all the other input boxes
                 myEmail.from = from;
        = phone;
                 myEmail.destination = destination;
                 myEmail.arrive = arrive;
                 myEmail.depart = depart;
                 myEmail.comments = comments;
                 myEmail.sendAndLoad("mail_form.asp", myEmail, "POST");
                 myEmail.onLoad = function(success)
                      if (success)
                           //Add success message or gotoAndStop which ever frame you want it to go
                           //Add your error message here

This should send all the variables to your asp page.
If you need anymore help, give me a yell.



Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

This is intended to introduce all collision detection principles in flash, their strengths, weaknesses and workarounds. The main method for Collision Detection in flash is using hitTestObject. But unless you'll be pushing rectangular shapes without …
I have been doing hardcore actionscripting for some time; and needless to say I have faced a lot of problems in just understanding others' code rather than understanding what the code executes. A programmer's life can become hell when there are a lo…
In this tutorial viewers will learn how to create a basic shape tween animation in Flash including shape hints for smooth animation Open a new document in Flash: Draw a shape: Select another frame (how long you want the tween to be): Right click and…
The goal of the tutorial is to teach the user how to live broadcast using Flash Media Live Encoder and connecting it to YouTube to broadcast. Log into your Youtube account, choose live stream settings, start live stream from Flash Media Live Enc…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now