Jump to content

Need help with sending Feedback from Flash 8 by email


super_man

Recommended Posts

Hi There,

Im very new at this and I appreciate any positive help on this:

Ive created a flash site with TextInput components so people can put their name and so forth. Each TextInput has an instance name. When the Submit Button is pressed, the flash site goes to a Sending Page that states "Your form has been Sent" Once the form has been sent successfully, the flash site then goes to a Thank You page.

This process is working but when I test this, I check my email and all of the TextInput fields are blank, none of the info the user has typed is being sent.

Here is my PHP file:

<?php

$to = 'myemail@domain.com';
$subject = 'Registration Form';

$message = 'From: '.$_POST['from']."\n\n";
$message = 'Name: '.$_POST['name']."\n\n";
$message = 'email: '.$_POST['email']."\n\n";
$message = 'Dbirth: '.$_POST['dbirth']."\n\n";
$message = 'Parent: '.$_POST['parent']."\n\n";
$message = 'Address: '.$_POST['address']."\n\n";
$message = 'City: '.$_POST['city']."\n\n";
$message = 'State: '.$_POST['state']."\n\n";
$message = 'Zipcode: '.$_POST['zipcode']."\n\n";
$message = 'Phone: '.$_POST['phone']."\n\n";
$message = 'Ephone: '.$_POST['ephone']."\n\n";
$message = 'Econtact: '.$_POST['econtact']."\n\n";
$additionalHeaders = "From: Registration Form<myemail@domain.com>\n";
$additionalHeaders .= 'Reply-To: '.$_POST['email'];

$OK = mail($to, $subject, $message, $additionalHeaders);
if ($OK) {
echo 'sent=OK';
}
else {
echo 'sent=failed&reason='.urlencode('There seems to be a problem with the server. Please try again later.');
}
?>
Here is what I have in Flash (actionscript)
message.name = name.text;
message.dbirth = email.text;
message.parent = parent.text;
message.address = address.text;
message.city = city.text;
message.state = state.text;
message.zipcode = zipcode.text;
message.phone = phone.text;
message.ephone = ephone.text;
message.email = email.text;
message.econtact = econtact.text;

Here is what the Email looks like :

Subject:  Registration Form

From:

Name:

email:

Dbirth:

Parent:

Address:

City:

State:

Zipcode:

Phone:

Ephone:

Econtact:


Any help would be appreciated, Thanks in advance.
Link to comment
Share on other sites

Here is all the actionscript I have :

submit_btn.onRelease = sendMessage;

error1_txt.autoSize = true;
error2_txt.autoSize = true;
error3_txt.autoSize = true;
error4_txt.autoSize = true;
error5_txt.autoSize = true;
error6_txt.autoSize = true;
error7_txt.autoSize = true;
error8_txt.autoSize = true;
error9_txt.autoSize = true;
error10_txt.autoSize = true;
error11_txt.autoSize = true;
error12_txt.autoSize = true;

function checkForm():Boolean {
var missing:Boolean = false;
error1_txt.text = error2_txt.text=error3_txt.text=error4_txt.text=error5_txt.text=error6_txt.text=error7_txt.text=error8_txt.text=error9_txt.text=error10_txt.text=error11_txt.text="";
if (name.text == "") {
error1_txt.text = "Error";
missing = true;
}
if (dbirth.text == "") {
error2_txt.text = "Error";
missing = true;
}
if (parent.text == "") {
error3_txt.text = "Error";
missing = true;
}
if (address.text == "") {
error4_txt.text = "Error";
missing = true;
}
if (city.text == "") {
error5_txt.text = "Error";
missing = true;
}
if (state.text == "") {
error6_txt.text = "Error";
missing = true;
}
if (zipcode.text == "") {
error7_txt.text = "Error";
missing = true;
}
if (phone.text == "") {
error8_txt.text = "Error";
missing = true;
}
if (ephone.text == "") {
error9_txt.text = "Error";
missing = true;
}
if (email.text == "") {
error10_txt.text = "Error";
missing = true;
}
if (econtact.text == "") {
error11_txt.text = "Error";
missing = true;
}
if (sign.CheckBox == "") {
error12_txt.text = "Error";
missing = true;
}
return missing ? false : true;
}
function sendMessage():Void {
// check wheather form has been correctly filled in
var formOK:Boolean = checkForm();
// if no problems, process the form and send variables to PHP script
if(formOK) {
message.name = name.text;
message.dbirth = email.text;
message.parent = parent.text;
message.address = address.text;
message.city = city.text;
message.state = state.text;
message.zipcode = zipcode.text;
message.phone = phone.text;
message.ephone = ephone.text;
message.email = email.text;
message.econtact = econtact.text;
//display message informing user that email is being sent
gotoAndStop("sending");
}
};
function backToForm():Void {
//send playhead back to the main form
gotoAndStop("register");
}
messageSent.onLoad = function() {
if(this.sent == "OK") {
gotoAndStop("acknowldedge");
}else{
gotoAndStop("failure");
failure_txt.text = this.reason;
}
};

message.sendAndLoad("chivasreg.php?ck="
+new Date().getTime(), messageSent);
Link to comment
Share on other sites

Try the variables as

$message .= "new stuff";

.= means the same as $message = $message . "new stuff";

That way instead of erasing the old data itll add to it...

That might not be the problem though... Didnt thoroughly look through your code and Im no flash expert (been messin with it like 3 days ><)

If its not it try changing the file that processes it to
[code=php:0]
<?
session_start();
foreach($_GET as $k => $v) {
$_SESSION[$k] = $v;
}
?>
[/code]

then make a new page and make it
[code=php:0]
<?
session_start();
print_r($_SESSION);
?>
[/code]

Then fill out the form and all that fun stuff then go to the second page in the same browser window and see what it says
Link to comment
Share on other sites

[quote author=thorpe link=topic=116514.msg474777#msg474777 date=1164673994]
You dont specify a method in your call to sendAndLoad and Im quite sure it defaults to get. Try...

[code]
message.sendAndLoad("chivasreg.php?ck="+new Date().getTime(), messageSent,"POST");
[/code]
[/quote]

Hey, I tried that and added "POST" like you said and the email response I get still do not show the values I put in on the flash form. Everything is still blank and when I hit the back button it sends another email with blank values..... uggghhhh this is driving me nuts...lol.
Link to comment
Share on other sites

Sorry, but you'll also need to do as corbin suggested and add the dot between your message variables. eg;

[code=php:0]
$message = 'From: '.$_POST['from']."\n\n";
$message .= 'Name: '.$_POST['name']."\n\n";
$message .= 'email: '.$_POST['email']."\n\n";
$message .= 'Dbirth: '.$_POST['dbirth']."\n\n";
$message .= 'Parent: '.$_POST['parent']."\n\n";
$message .= 'Address: '.$_POST['address']."\n\n";
$message .= 'City: '.$_POST['city']."\n\n";
$message .= 'State: '.$_POST['state']."\n\n";
$message .= 'Zipcode: '.$_POST['zipcode']."\n\n";
$message .= 'Phone: '.$_POST['phone']."\n\n";
$message .= 'Ephone: '.$_POST['ephone']."\n\n";
$message .= 'Econtact: '.$_POST['econtact']."\n\n";
[/code]

Other then that, Id'e say this is a flash issue.
Link to comment
Share on other sites

Success, well I got some good news .... I am now getting 2 emails from the flash form .... 1 with blank values and if I hit the register button again to go back to the registration form ... the values that I put in last now show up in the 2nd email ... so its kind of working ... but Im not sure where to go with this... Why would hitting the register button again make the values I put in finally show up in the registration email ?
Link to comment
Share on other sites

[quote author=corbin link=topic=116514.msg474821#msg474821 date=1164677147]
I could write it from scratch in flash... but some parts of your code are gibberish to me...
[/quote]

Hey Corbin, to be honest all the actionscript you see here came out of a book Im reading about Flash and PHP. I just renamed a few of the values to the instance names of what I have already designed. What can I remove or tweak to make this better/work?

Also ** Thanks to all who are helping, I really appreciate all the feedback. Its nice to know you can count on people to help when you need it.**
Link to comment
Share on other sites

Ok, so ... in my madness Ive decided to write another fla with 3 simple TextInput's

1. Name
2. Email
3. Comments ...

Here is my PHP file

<?
$to = 'myemail@domain.com';
$subject = 'Comments from myemal@doman.com';

$message = 'From: '.$POST['email']."\n\n";
$message .= 'Name: '.$POST['name']."\n\n";
$message .= 'Comments: '.$POST['comments']."\n\n";
$additionalHeaders = "From: Comments Section<myemail@domain.com>\n";
$additionalHeaders .= 'Reply-To: '.$POST['email'];

$OK = mail($to, $subject, $message, $additionalHeaders);
?>

Flash Actionscript:
stop();

function checkForm():Boolean {
var missing:Boolean = false;
error1_txt.text = error2_txt.text=error3_txt.text="";
if (name.text == "") {
error1_txt.text = "Please Fill in Your Name";
missing = true;
}
if (email.text == "") {
error2_txt.text = "Please Fill In Your Email Address";
missing = true;
}
if (comments.text == "") {
error3_txt.text = "No Comments?";
missing = true;
}
return missing ? false : true;
}
error1_txt.autoSize = true;
error2_txt.autoSize = true;
error3_txt.autoSize = true;
submit_btn.onRelease = sendMessage;
function sendMessage():Void {
//check weather form has been correctly filled in
var formOK:Boolean = checkForm();
//if no problems, process the form and send variables to PHP script
if (formOK) {
message.name = name.text;
message.email = email.text;
message.comments = comments.text;
message.sendAndLoad("email.php?ck="
+ new Date().getTime(), messageSent,"POST");
//display message informing user that email has been sent
gotoAndStop("thankyou");
}
};
//initialize LoadVars to send form data
//and receive response frin the PHP script
var message:LoadVars = new LoadVars();
var messageSent:LoadVars = new LoadVars();


Once again, the email shows up with the Value Names but no values that you entered in the Form. Is there something wrong with Flash?  This should be so simple but life is playing a cruel joke on me....lol
Link to comment
Share on other sites

[quote]Is there something wrong with Flash?  This should be so simple but life is playing a cruel joke on me....lol[/quote]

Well, there is nothing wrong with your php. I was hinting at it earlier, I suggest you post your question on a flash board.
Link to comment
Share on other sites

$message = 'From: '.$POST['email']."\n\n";
$message .= 'Name: '.$POST['name']."\n\n";
$message .= 'Comments: '.$POST['comments']."\n\n";

should be
$message = 'From: '.$_POST['email']."\n\n";
$message .= 'Name: '.$_POST['name']."\n\n";
$message .= 'Comments: '.$_POST['comments']."\n\n";
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.