【发布时间】:2015-04-20 07:48:31
【问题描述】:
我想在使用 PHP 发送邮件时显示感谢信息
我尝试了类似的东西
if(mail){echo "<script type='text/javascript'>alert('bedankt!');</script>";}
但我无法收到警报。
我将表单定向到 mail.php,但是当 mail.php 完成后,它会再次重定向到 index.html 并使用header('Location: ' . $_SERVER['HTTP_REFERER']);
这可能是它不显示警报的原因吗?还是我做错了什么?
编辑:
我的代码:
<form action="mail.php" method="post" onsubmit="bedanktBericht()">
<input class="invoeren" name="naamUser" type="text" placeholder="Naam" required>
<input class="invoeren" name="nummerUser" type="text" placeholder="Telefoonnummer" required>
<input class="invoeren" name="onderwerpUser" type="text" placeholder="Onderwerp" required>
<textarea class="invoeren" type="text" name="opmerkingUser" placeholder="Opmerking" required></textarea>
<button type="submit" id="contactButton" >Verstuur</button>
</form>
<?php error_reporting(E_ALL); ini_set('display_errors', 1);
ob_start();
$naamUser = $_POST['naamUser'];
$nummerUser = $_POST['nummerUser'];
$onderwerpUser = $_POST['onderwerpUser'];
$opmerkingUser = $_POST['opmerkingUser'];
$formcontent="Aanvraag formulier Domein naam \n
Naam: $naamUser \n
Telefoonnummer: $nummerUser \n
Onderwerp: $onderwerpUser \n
Opmerking: $opmerkingUser \n
";
$recipient = "email@email.nl";
$subject = "Terug Bellen";
$mailheader = "From: \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
header('Location: ' . $_SERVER['HTTP_REFERER']); /* Stuur de browser naar www.site.nl */
if(mail){echo "<script type='text/javascript'>alert('bedankt!');</script>";}
?>
编辑 2: 我想在 index.html 页面上执行警报。 不是mail.php。这就是为什么我尝试在重定向后使用 echo 。
【问题讨论】:
-
提交您的完整代码
-
重定向不会;不会让它工作.. 虽然在进一步评论之前似乎需要分析代码!
-
if(mail){echo "";} 错误..使用警报条件第一个邮件句子..
-
注意:
mail()返回TRUE是否已接受交付。这并不意味着它实际上已经交付。 -
另一种方法是使用“PHP Flash Messages”,这是您在 $_SESSION 中存储按摩的位置,并检查“目标”页面以显示消息(如果已设置)。然后删除该消息。