PHP脚本继续发送电子邮件evertime加载页面

时间:2017-10-30 03:04:56

标签: php html email

我已为我的网站整理了一份简单的联系表格。使用PHP发布数据并直接发送到我的电子邮件地址。但出于某种原因,每次我访问我的网站上的页面。我仍然在表单下显示测试消息。然后当我重新加载网站并再次访问该链接时,它仍然显示感谢信息。并自动发送电子邮件。我在发布前2天仍然处于测试模式,我需要这个数字。考虑到我是php的新手我不知道在哪里....查看我的网站以获得实时视图https://trillumonopoly.com(点击菜单中的“联系我们”链接)我希望联系表格消失,回复谢谢你的消息一旦发送。重新加载页面后重置。我也使用Jquery ajax将我的所有页面加载到div容器中。所以我想将内容保留在div中,而不转发到Echo消息页面,留下我的索引页

Heres My ajax code

$(document).ready(function () {
    loadMainContent('main');

    $('body').delegate('.navMenu', 'click', function (event) {
        event.preventDefault();
        loadMainContent($(this).attr('href'));
    });
});

function loadMainContent(page) {
    $('#main').load('pages/' + page + '.php');
}

这里是表单的html:

<div class="general row container-fluid"><br>
    <center><img src="img/divider.png" class="img-fluid"></center>
        <div class="col-lg-6 col-sm-12">
        <img src="img/logo.png" class="img-fluid" height="540px" width="540px">
        </div>
        <div class="col-lg-6 col-sm-12 container"><center>
            <br><h1 class="form-title">Contact Us</h1><br></center>
            <div class="container"> 
                <form action="pages/mail.php" method="GET" class="box2">
                    NAME:
                    <input type="text" name="name" placeholder="YOUR NAME HERE" required>
                    <br><br>
                    EMAIL:
                    <input type="email" name="email" placeholder="YOUR EMAIL HERE" required>
                    <br><br>
                    MESSAGE:<br>
                    <textarea name="message" rows=10 cols=23 placeholder="YOUR MESSAGE HERE" required></textarea>
                    <br><Br>
                    <button type="submit" value="Message Sent" class="btn btn-danger btn-lg" style="background-color:"red">SUBMIT</button
                </form>
                <center><?php include('mail.php'); ?></center>
           </div>
        </div>

</div>

这是我的简单PHP:

<?php 

$name = $POST['name'];
$email = $POST['email'];
$message = $POST['message'];

mail("info@trillumonopoly.com","ILLUMONOPOLY WEB Contact", $message,"From: $email\r\n");

echo "Thank You For Contacting Us!";




?>

1 个答案:

答案 0 :(得分:1)

比发送邮件之前检查所有内容更好。

if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['message'])){
    $name = $POST['name'];
    $email = $POST['email'];
    $message = $POST['message'];

    mail("info@trillumonopoly.com","ILLUMONOPOLY WEB Contact", $message,"From: $email\r\n");

    echo "Thank You For Contacting Us!";
}

将POST请求发送到索引,而不是mail.php。

<form action="" method="POST">
    ...

因此,用户可以在联系表单的末尾看到您的消息。