我是法語的(對不起英語),我正在尋找解決此問題的方法。 我做了一個女巫發送郵件給我在contact.php文件中指出的地址。 問題是我收到的郵件不包含「emailSchool」變量。用腳本發送表格電子郵件
下面是我的一些文件:
我的HTML文件:
<div id="formulaire">
<form id="myForm" action="contact.php" method="post">
<label for="emailName">Nom et prénom:</label>
<input name="emailName" type="text" id="emailName"/>
<label for="emailFrom">Email:</label>
<input name="emailFrom" type="text" id="emailFrom"/>
<label for="emailSchool">Ecole :</label>
<input name="emailSchool" type="text" id="emailSchool"/>
<label for="emailMessage">Message: (optionnel)</label>
<textarea name="emailMessage" cols="30" rows="9" id="emailMessage"></textarea>
<input style="padding-left:5px; width:80px; height:32px;" type="image" src="images/send.png" id="submit" class="submit" alt="ENVOYER"/>
<input type="hidden" name="submitted" id="submitted" value="true" />
</form>
我的腳本:
$("#submit").click(function(){
var hasError = false;
var emailReg = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/;
var emailFromVal = $("#emailFrom").val();
if(emailFromVal == '') {
$("#emailFrom").addClass("error");
hasError = true;
} else if(!emailReg.test(emailFromVal)) {
$("#emailFrom").addClass("error");
hasError = true;
}
else
{
$("#emailFrom").removeClass("error");
}
var nameVal = $("#emailName").val();
if(nameVal == '') {
$("#emailName").addClass("error");
hasError = true;
}
else
{
$("#emailName").removeClass("error");
}
var schoolVal = $("#emailSchool").val();
if(schoolVal == '') {
$("#emailSchool").addClass("error");
hasError = true;
}
else
{
$("#emailSchool").removeClass("error");
}
var messageVal = $("#emailMessage").val();
if(messageVal == '') {
$("#emailMessage").addClass("error");
hasError = true;
}
else
{
$("#emailMessage").removeClass("error");
}
if(hasError == false) {
$(this).hide();
$("#myForm").fadeOut("fast", function(){
$("#myForm").before('<img src="images/loading.gif" alt="Loading" id="loadingImage" />');
$.post("contact.php", { emailFrom: emailFromVal, emailName: nameVal, emailSchool: schoolVal, emailMessage: messageVal },
function(data){
$("#loadingImage").fadeOut("fast", function() {
$("#loadingImage").before('<p>Votre inscription a bien été pris en compte, nous vous enverrons un email pour confirmer !</p>');
});
}
);
});
}
return false;
}
我的PHP文件:
<?php
$nameVal=$POST['emailName'];
$emailFromVal=$POST['emailFrom'];
$messageVal=$POST['emailMessage'];
$schoolVal=$POST['emailSchool'];
$to='[email protected]';
$sujet='Nouvel incrit JEIC CHALLENGE !'.$emailFrom;
$msg='Message :'.$emailMessage;
$mailHeader = "From = {$emailFrom}";
$mailBody = "Nom = {$emailName} Ecole = {$emailSchool}";
mail($to, $sujet, $msg, $mailBody , $mailHeader);
?>
問題是我收到的郵件中沒有「學校」字段。 也許有人有解決方案? 非常感謝。
我用{$ schoolVal}替換我的標題{$ emailSchool},但它似乎沒有改變任何東西。 – 2011-12-29 14:32:00
你的任何值是否都到達PHP?因爲你使用'$ POST'而不是'$ _POST' – Niels 2011-12-29 14:51:00
好吧!問題解決了,它工作! 非常感謝您的反應。 來自法國的歡呼聲。 – 2011-12-29 14:59:22