嗨我有一个HTML文件,其中包含一个表单和一个接收html表单数据的php文件。 我想在PHP文件执行后在html文件(div容器内)中显示确认消息。到处寻找很多东西,但仍然没有得到答案。如何在提交表单后在HTML页面中进行确认
这里是我的HTML表单(enquiry.html)
<div class="form-body">
<form method="post" action="/">
<span id="MasterInner_lblName">Your Name</span>
<input name="MasterInner_txtName" type="text" />
<span id="MasterInner_lblEmail">Your Email</span>
<input name="MasterInner_txtEmail" type="email" />
<span id="MasterInner_lblMobile">Your Mobile</span>
<input name="MasterInner_txtMobile" type="text" />
<span id="MasterInner_lblCity">Your City</span>
<input name="MasterInner_txtCity" type="text" />
<span id="MasterInner_lblCity">Remarks</span>
<textarea name="MasterInner_txtRemarks" /></textarea>
<button type="button" name="MasterInner_submit" value="Submit" id="submitform" Class="form-button" />Submit</button>
</form>
</div> <!-- Form ends -->
<div id="confirmID">test for form submission</div>
<script>
$("#submitform").click(function() {
//code
$.post("enquiry.php", {
MasterInner_txtNamePost: MasterInner_txtName,
MasterInner_txtEmailPost: MasterInner_txtEmail,
MasterInner_txtMobilePost: MasterInner_txtMobile,
MasterInner_txtCityPost: MasterInner_lblCity,
MasterInner_txtRemarksPost: MasterInner_txtRemarks
},function(data) {
alert("Form submitted");
document.getElementByID(confirmID).innerHTML = "Submitted";
});
});
</script>
我无法理解,有什么用PHP编写设置“感谢您提交”,在HTML页面信息。
Enquiry.php文件
<?php
//使用error_reporting(0);
//if($_POST["w32apideftype"]!="")
//{
//echo $_POST["key"];
// Function for filtering input values.
function test_input($data)
{
$data = trim($data);
$data =stripslashes($data);
$data =htmlspecialchars($data);
return $data;
}
//echo "ths i stest";
// Initialize variables to null.
$s_name="ABC";// Sender Name
$s_email="[email protected]";//Sender's Email
$r_email="xyz <xyz.com>";//Recipient Email
$subject1="My subject";//Subject of mail
//Form Data vars
$f_name ="";
$f_email =""; // Sender's email ID
$f_message =""; // Sender's Message
$f_phone="";//Sender's Phone
$f_city="";//Sender's city
//Form data vars end
$nameError ="";
$emailError ="";
$f_phoneError="";
$f_cityError="";
$subjectError ="";
$f_messageError ="";
$successMessage =""; // On submittingform below function will execute.
if(isset($_POST['MasterInner_submit'])) { // Checking null values in message.
//echo "Submit button pressed";
if (empty($_POST["MasterInner_txtName"])){
$nameError = "Name is required";
//echo $nameError;
}
else
{
if (!preg_match("/^[a-zA-Z ]*$/",$f_name))
{
$nameError = "Only letters and white space allowed";
}
else
{
$f_name = test_input($_POST["MasterInner_txtName"]); // check name only contains letters and whitespace
//echo $name;
}
} // Checking null values inthe message.
if (empty($_POST["MasterInner_txtEmail"]))
{
$emailError = "Email is required";
//echo $emailError;
}
else
{
$f_email = test_input($_POST["MasterInner_txtEmail"]);
//echo $email;
} // Checking null values inmessage.
if (empty($_POST["MasterInner_txtRemarks"]))
{
$f_messageError = "Message is required";
$f_message="No Additional message";
//echo $f_messageError;
}
else
{
$f_message = test_input($_POST["MasterInner_txtRemarks"]);
//echo $f_message;
} // Checking null values inthe message.
if (empty($_POST["MasterInner_txtMobile"]))
{
$f_phoneError = "Genuine phone is required";
//echo $f_phoneError;
}
else
{
$f_phone = test_input($_POST["MasterInner_txtMobile"]);
//echo $f_phone;
} // Checking null values inmessage.
if ($_POST["MasterInner_txtCity"]=="Not Selected")
{
$f_cityError = "city is required";
//echo $f_cityError;
}
else
{
$f_city = test_input($_POST["MasterInner_txtCity"]);
//echo $f_city;
} // Checking null values inmessage.
if(!($f_name=='') && !($f_email=='') &&!($f_phone=='') &&!($f_city==''))
{ // Checking valid email.
if (preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$f_email))
{
$email=str_replace(",","",$f_email);
$header1 = 'MIME-Version: 1.0' . "\r\n";
$header1 .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$header1 .= 'To: '.$r_email."\r\n";
$header1 .= 'From: '.$s_name.'<'. $s_email .'>' . "\r\n";
$header1 .= 'Cc:' . "\r\n";
$header1 .= 'Bcc:' . "\r\n";
/* Let's prepare the message for the e-mail */
//$msg = wordwrap($msg, 70, "\r\n");
$msg1 = '<html><head><title>Enquiry</title></head>
<body><table style="font-size:16px;font-weight:bold;border:3px solid #e0781f;"bgcolor="#dededc" align="center" width="500"><tr><td colspan="2"><h1>'.$f_name.' sent a Enquiry</h1></td></tr>
<tr><td>Name: </td><td>'.$f_name.'</td></tr>
<tr><td>E-mail: </td><td>'.$f_email.'</td></tr>
<tr><td>Phone: </td><td>'.$f_phone.'</td></tr>
<tr><td>city: </td><td>'.$f_city.'</td></tr>
<tr><td>Message: </td><td>'.$f_message.'</td></tr></table>
</body></html>';
/* Send the message using mail() function */
//echo "message1: - $msg and message 2 : - $msg1";
if(mail($s_email,$subject1,$msg1,$header1))
{
$successMessage = "Message sent successfully.......";
echo"Thank You";
header("location:".$_POST["w32apideftype"]);
}
}
else
{
$emailError = "Invalid Email";
//echo"Invalid Email";
}
}
}
//}
?>
请帮助,得到这个工作。
请发布您的PHP文件以及 – zachu
如果您使用ajax将表单的详细信息提交给php,您可以等待回调状态,然后显示成功消息 - 您也可以回显一些数据从PHP到ajax说什么 - http://api.jquery.com/jquery.ajax/ - 在该页面上搜索(保存一些数据到服务器,并在用户完成后通知用户。) – Tasos