3 回答

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個(gè)贊
您可以傳遞 aGET-parameter以便在頁面重新加載時(shí)檢查它。試試這個(gè)代碼示例:
if($mail->send()){
header("Location: home.php?success");
} else {
$error .= "Error {$mail->ErrorInfo}";
}
在您的頁面上:
<div class="text-center impact">
<?php echo isset($_GET['success']) ? "Thank you for message!" : $error; ?>
</div>

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊
你沒有$error在你的頁面之間傳遞變量,所以當(dāng)你回顯它時(shí),它沒有被定義,你不會(huì)得到任何輸出。您需要通過 URL 查詢參數(shù)傳遞它:
header("Location: home.php?error=" . rawurlencode($error));
然后在該頁面上檢索它:
echo $_GET['error'];
或者通過會(huì)話變量傳遞它(可能是更好的選擇):
$_SESSION['errors'] = $error;
header("Location: home.php");
接著:
echo $_SESSION['error'];

TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個(gè)贊
您不會(huì)看到它,因?yàn)槟臑g覽器會(huì)在您看到它之前立即重定向。
超級(jí)簡單的解決方案是重定向到: header("Location: send-confirmation.php");
帶有消息已發(fā)送的信息。當(dāng)然,您可以做更高級(jí)的解決方案并將 apropiate 參數(shù)傳遞給主頁或在您的 phpmailer 頁面上使用 cookie/session 以避免重復(fù)發(fā)送。
- 3 回答
- 0 關(guān)注
- 133 瀏覽
添加回答
舉報(bào)