我正在Flash CS6中创建一个表单-Actionscript 2&Flash Player 8。我想用PHP发送一封带有输入数据的电子邮件。
我有一个输入文本字段,实例名为InInput,还有一个按钮:bSubmit。
我的Flash按钮:
bSubmit.onRelease = function()
{
email();
}
function email()
{
var sMessage = "This is from a form<br/><br/>" + "Number: " + nInput.text;
lvSend = new LoadVars();
lvReply = new LoadVars();
lvSend.msg = sMessage;
lvSend.address = "my@email.com";
nInput.text = "";
lvSend.sendAndLoad('mail.php', lvReply, 'POST');
}
我的PHP脚本
<?php
$message = stripslashes($_POST['msg']);
$address = $_POST["address"];
$headers = "From:another@email.com 'r'n";
$headers .= 'MIME-Version: 1.0' . "'r'n";
$headers .= 'Content-type: text/html; charset=utf-8' . "'r'n";
mail($address,"My Subject",$message, $headers);
?>
除了没有显示输入数据外,其他一切都很好。这就是电子邮件的样子:
这来自一个表单
编号:未定义
我想Flash中的脚本有问题,但我不知道是什么。你们知道吗?谢谢
编辑
这是有效的:
bSubmit.onRelease = function()
{
email();
}
function email()
{
var nInput = nInput.text;
var sMessage = "This is from a form<br/><br/>" + "Number: " + nInput;
lvSend = new LoadVars();
lvReply = new LoadVars();
lvSend.msg = sMessage;
lvSend.address = "my@email.com";
lvSend.sendAndLoad('mail.php', lvReply, 'POST');
}
很高兴你能成功。只是为了将来参考,你可以做
bSubmit.onRelease = email;
不放:
function() {
email();
}
除非你想传递参数,在这种情况下,这是有意义的:
bSubmit.onRelease = function() {
email(nInput.text, "my@address.com");
}