Everything works with this script even sending mail except it does not seem to be responding with the data sent back from the PHP script. If I use an HTML based form to send the data, I get the correct responses echoed when the PHP script is run. For some reason the listener I created for the Actionscript isn't working. Please help! I have included the code I am using. //start off with submit button dimmed submit_mc._alpha = 40; //create the LoadVars objects which will be used later //one to send the data... dataSender = new LoadVars(); //and one to recieve what comes back dataReceiver = new LoadVars(); /* create listener for Key Object this is just a U.I. thing - "wakes up" the submit button when all fields have at least some content */ formCheck = new Object(); formCheck.onKeyUp = function() { if (name_txt.text != '' && email_txt.text != '' && subject_txt.text != '' && message_txt.text != '') { //clear any alert messages alert_txt.text = ''; //enable the submit button submit_mc._alpha = 100; } else { //remain disabled until all fields have content submit_mc._alpha = 40; } } Key.addListener(formCheck); /*#######SET STYLES FOR TEXT FIELDS#######*/ //define styles for both normal and focussed //set hex values here that work with your site's colors normal_border = 0x7A7777; focus_border = 0xFA8D00; normal_background = 0xECECE6; focus_background = 0xE9E3E3; normal_color = 0x776D6C; focus_color = 0x000000; //create an array containing the fields we wish to have styles applied to inputs=[name_txt,email_txt,subject_txt,message_txt]; /* a "for in" loop now iterates through each element in the "inputs" array and applies our "normal" formatting to each input text field */ for( var elem in inputs) { inputs[elem].border = true; inputs[elem].borderColor = normal_border; inputs[elem].background = true; inputs[elem].backgroundColor = normal_background; inputs[elem].textColor = normal_color; } /* this takes care of applying the "normal" style to each of the four input fields; the following TextField prototypes handle highlighting when an input field gains focus and resetting to normal when a field loses focus */ //create a textField prototype to handle set and kill focus behaviors TextField.prototype.onSetFocus = function() { this.borderColor = focus_border; this.backgroundColor = focus_background; this.textColor = focus_color; } TextField.prototype.onKillFocus = function() { this.borderColor = normal_border; this.backgroundColor = normal_background; this.textColor = normal_color; } //finally: make the first field (name_txt) selected when the movie loads Selection.setFocus(name_txt); /*DEFINE SUBMIT BUTTON BEHAVIOR*/ submit_mc.onRelease = function() { //final check to make sure fields are completed if (name_txt.text != '' && email_txt.text != '' && subject_txt.text != '' && message_txt.text != '') { alert_txt.text='';//clear any previous error messages or warnings //advance playhead to frame 2 - the "processing" message _root.play(); //assign properties to LoadVars object created previously dataSender.name = name_txt.text; dataSender.email = email_txt.text; dataSender.subject = subject_txt.text; dataSender.message = message_txt.text; //callback function - how to handle what comes abck dataReceiver.onLoad = function() { if (this.response == "invalid") { _root.gotoAndStop(1); alert_txt.text = "Please check email address - does not appear valid." } else if (this.response == "error") { _root.gotoAndStop(3); } else if (dataReceiver.response == "passed") { _root.gotoAndStop(4); } } //now send data to script /************************* NOTE: the line below presumes the Flash swf file and php script are in the SAME DIRECTORY on your server. If this is not the case (if for example you wish to put the php script along with other similar items in a "scripts" directory) you MUST MODIFY THE PATH. Otherwise the Flash movie won't be able to locate the php script. *************************/ dataSender.sendAndLoad("processEmail.php", dataReceiver, "POST"); } else { //warning if they try to submit before completing alert_txt.text = "Please complete all fields before submitting form."; } }
Don't see what you're looking for? Try a search.
|