PHP contact form in AS3

This one had me stumped for AGES as I’m no PHP person, but got it working – here’s how.

PHP file:


<?php
$to = "yourname@youremail.com";
$subject = "Email Subject";
$message = "The message body.\n";
$message .= "More of the message.\n";
$message .= "Even more of the message.\n";
$message .= "Name: " . $_POST['firstname'] . " " . $_POST['lastname'] . "\n";
$message .= "Email: " . $_POST['email'] . "\n";
$headers = "From: " . $_POST['name'] . " \n";
if(@mail($to, $subject, $message, $headers))
{
echo "answer=ok";
}
else
{
echo "answer=error";
}
?>

And the AS3:


private function sendMessage():void
{
var variables:URLVariables=new URLVariables();
variables.firstname = firstNameTxt.text;
variables.lastname = lastNameTxt.text;
variables.email = emailTxt.text;

var request:URLRequest=new URLRequest();
request.url='sendMail.php';
request.method=URLRequestMethod.POST;
request.data=variables;

var loader:URLLoader=new URLLoader();
loader.dataFormat=URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, messageSent);
try
{
resultTxt.text = "Sending...";
loader.load(request);
}
catch (error:Error)
{
resultTxt.text = "Error! ";
}
}

private function messageSent(evt:Event):void
{
var loader:URLLoader=URLLoader(evt.target);
var vars:URLVariables=new URLVariables(loader.data);
if(vars.answer=="ok")
{
resultTxt.text = "Message Sent.";
}
else
{
resultTxt.text = "Message NOT Sent";
}
}

Upload to a server that has PHP and should work a treat!

JK.

  1. No comments yet.

  1. No trackbacks yet.