2013-06-04 34 views
-1

我在我的網站上創建了一個PHP聯繫表單,除了查看成功或錯誤消息,它將用戶發送到thank-you.php頁面外,它運行良好。這是我如何設置,但我希望用戶提交和表單應消失,並說謝謝!代替表格。PHP聯繫表顯示成功和錯誤消息在同一頁

這裏是我的HTML表單:

<form class="form-foot" action="thank-you.php" method="post"> 
<fieldset> 
<legend>Footer contact form</legend> 
<div class="field"> 
<label for="name">Your name: </label> 
<input name="name" id="name" type="text" placeholder="Name" class="required field-name" required> 
</div> 
<div class="field"> 
<label for="email">Your email: </label> 
<input name="email" id="email" type="email" placeholder="Email address" class="required field-email" required> 
</div> 
<div class="field"> 
<label for="message">Message: </label> 
<textarea name="message" id="message" cols="30" rows="8" class="required field-message" placeholder="Your message" required></textarea> 
</div> 
<div class="field-submit"> 
<input class="sendbutton" type="submit"/> 
</div> 
</fieldset> 
</form> 

這裏是我的感謝you.php頁PHP:

<?php $name = $_POST['name']; 
$email = $_POST['email']; 
$message = $_POST['message']; 
$formcontent="From: $name \n Message: $message"; 
$recipient = "[email protected]"; 
$subject = "Contact Form"; 
$mailheader = "From: $email \r\n"; 
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!"); 
echo "Thank You!"; 
?> 

我怎樣才能讓在提交表單消失,回聲謝謝你成功的消息,而不會去感謝you.php或刷新頁面。

感謝

回答

0

替換:

<form class="form-foot" action="thank-you.php" method="post"> 

有:

<form name="myform" class="form-foot" action="" method="post"> 

提供一個名稱的提交按鈕:從

<input name="submit" class="sendbutton" type="submit"/> 

移動代碼的感謝。 PHP to yourform.php:

if(isset($_POST['submit'])) 
{ 

    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 
    $formcontent="From: $name \n Message: $message"; 
    $recipient = "[email protected]"; 
    $subject = "Contact Form"; 
    $mailheader = "From: $email \r\n"; 
    mail($recipient, $subject, $formcontent, $mailheader) or die("Error!"); 
    echo "Thank You!"; 
} 
+0

嗨Jocelyn,確定這很好,但是無論如何,無需刷新頁面就可以顯示Thank You消息了嗎? –

+0

如果您不想重新加載頁面,您可能需要使用AJAX。 – Jocelyn

+0

你能幫助所有Jocelyn請,我不知道我的方式圍繞AJAX? –

0

您可以使用ajax將數據發佈到javascript中的thank-you.php文件。通過調用提交函數而不是表單中的action屬性。該功能可以有以下格式

var url = "thank-you.php"; 
var data = $('#your-form-id').serialize(); 


$.ajax({ 
     type: "post", 
     url: url, 
     data: data, 
     success: function(msg) { 

     }  
    }); 

在從感謝頁面獲取消息,你可以利用它來分配它包含窗體的HTML與感謝您更換表格!