いくつかのフォーム データを操作し、PHP ページへの POST を作成するための JavaScript 関数があります。js は xmlHTTP.open を実行し、作成された URL に送信します。
PHP ページはパラメーターを受け入れて電子メールを送信する必要がありますが、パラメーターを受け入れていないようです。
ここに欠けている愚かなものがあることは知っていますが、同様のページが他にもありますが、パラメーターが少なく、正常に動作します。
<script>
function submitReg()
{
var fn = document.getElementById("textfname").value;
var ln = document.getElementById("textlname").value;
var e = document.getElementById("textemail").value;
var p = document.getElementById("textphone").value;
var pr = document.getElementById("promocode").value;
var c1 = document.getElementById("st-1").innerHTML + "_"
+ document.getElementById("c- 1").innerHTML;
if (document.getElementById("st-2").innerHTML != "")
{
var c2 = document.getElementById("st-2").innerHTML + "_" +
document.getElementById("c-2").innerHTML;
}
if (document.getElementById("st-3").innerHTML != "")
{
var c3 = document.getElementById("st-3").innerHTML + "_" +
document.getElementById("c-3").innerHTML;
}
var myURL = "form-to-email.php?" + "fn=" + fn + "&ln=" + ln + "&e=" + e +
"&p=" + p + "&pr=" + pr + "&c1=" + c1 + "&c2=" + c2 + "&c3=" + c3;
xmlhttp.open("POST", (encodeURI(myURL)), true);
xmlhttp.send();
}
</script>
そしてPHPコード:
<?php
$fname = $_POST["fn"];
$lname = $_POST["ln"];
$email = $_POST["e"];
$phone = $_POST["p"];
$promo = $_POST["pr"];
$county1 = $_POST["c1"];
$county2 = $_POST["c2"];
$county3 = $_POST["c3"];
$email_from = 'support@somesite.com';
$email_subject = "Someone filled out the Splash page";
$email_body = "You have received a new form submission from the user $visitor_email.\n".
"Here it is:\n ".
"First Name: $fname \n".
"Last Name: $lname \n".
"Email: $email \n".
"Phone: $phone \n".
"Promo Code: $promo \n".
"First County: $county1 \n".
"Second County(if Any): $county2 \n".
"Third County(if Any): $county3 \n";
$to = "user@gmail.com";
$headers = "From: $email_from \r\n";
mail($to,$email_subject,$email_body,$headers);
Header("Location: thankyou.html");
?>