給定一個標準的html表單,如下面的表單;使用php發送郵件
<form method="post" action=<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>>
<div class="row half">
<div class="6u"><input type="text" placeholder="Name" name="name" /></div>
<div class="6u"><input type="text" placeholder="Email" name="email" /></div>
</div>
<div class="row half">
<div class="12u"><textarea name="message" placeholder="Message" name="message"></textarea></div>
</div>
<div class="row">
<div class="12u">
<ul class="actions">
<li><input type="submit" class="button" value="Send Message" name="submit" /></li>
<li><input type="reset" class="button alt" value="Clear Form" name="clear"/></li>
</ul>
</div>
</div>
</form>
而下面的PHP
if(isset($_POST['submit'])){
$to = "[email protected]"; // this is your Email address
$from = $_POST['email']; // this is the sender's Email address
$name = $_POST['name'];
$subject = "Website Enquiry";
$message = $name . " wrote the following:" . "\n\n" . $_POST['message'];
$headers = "From:" . $from;
$headers2 = "From:" . $to;
if(isValidString($from) && isValidString($name) && isValidString($message)){
mail($to,$subject,$message,$headers);
}
}
它可以發送電子郵件,但是,這種方法會導致幾個問題。因爲我的表單位於頁面的底部,所以當點擊發送時,頁面被重定向回來,並且焦點返回到頁面的頂部。
什麼是正確的方式來提供足夠的用戶反饋,讓用戶知道電子郵件已發送,是否可以導航回頁面並自動滾動到底部 - 允許我將發送按鈕更改爲綠色或什麼?
如果失敗了,是否有更好的方法來做到這一點?
謝謝
如果我瞭解你想添加一個反饋。你可以做一些事情(只是一個例子)'''if($ mail){header('Location:form.php?status = success'); }''''並在form.php中添加''''$ response = $ _GET ['status']; if($ response =='success'){echo「Mail has been sent」; }'''' – 2014-10-02 08:50:32