0

我的联系表单的 php 代码没有将电子邮件发送到指定的电子邮件,但是,它说它已发送。我把它上传到服务器上,所以它是实时的。但是,它仍然不起作用。我输入了我的真实电子邮件,但是,我将其更改为 myemail@gmail.com 来问这个问题。

HTML:

    <div class="contact-box">
    <div class="container">
        <div class="row">
            <div class="col-lg-12">
                <form action="contact.php" method="post">
                <div class="row">
                        <div class="col-md-12">
                            <div class="form-group">
                            <label for="name">Your Name</label>
                            <input type="text" class="form-control" id="name" name="visitor_name" placeholder="John Doe" pattern=[A-Z\sa-z]{3,20} required>
                        </div>
                        </div>
                        <div class="col-md-12">
                            <div class="form-group">
                            <label for="email">Your E-mail</label>
                            <input type="email" class="form-control" id="email" name="visitor_email" placeholder="youremail@email.com" required>
                            </div>
                        </div>
                        <div class="col-md-12">
                            <div class="form-group">
                            <label for="department-selection">Choose Topic</label>
                              <select class="custom-select d-block form-control" id="department-selection" name="concerned_department" required>
                                <option value="">Select Topic</option>
                                <option value="feedback">Customer feedback</option>
                                <option value="reservation">Reservation</option>
                                <option value="other">Other</option>
                                </select>
                            </div>
                        </div>
                        <div class="col-md-12">
                            <div class="form-group">
                            <label for="title">Reason For Contacting Us</label>
                            <input type="text" class="form-control" id="title" name="email_title" required placeholder="Subject of Email" pattern=[A-Za-z0-9\s]{8,60}>
                            </div>
                        </div>
                        <div class="col-md-12">
                            <div class="form-group">
                            <label for="message">Write your message</label>
                            <textarea id="message" class="form-control" name="visitor_message" placeholder="Message Content" required></textarea>
                            </div>
                        </div>
                        <div class="col-md-12">
                            <div class="submit-button text-center">
                            <button class="btn btn-common" type="submit">Send Message</button>
                            </div>
                        </div>
                </div>
            </form>
        </div>
    </div>
</div>

联系方式.php:

<?php

if($_POST) {
$visitor_name = "";
$visitor_email = "";
$email_title = "";
$concerned_department = "";
$visitor_message = "";
$email_body = "<div>";

if(isset($_POST['visitor_name'])) {
    $visitor_name = filter_var($_POST['visitor_name'], FILTER_SANITIZE_STRING);
    $email_body .= "<div>
                       <label><b>Visitor Name:</b></label>&nbsp;<span>".$visitor_name."</span>
                    </div>";
}

if(isset($_POST['visitor_email'])) {
    $visitor_email = str_replace(array("\r", "\n", "%0a", "%0d"), '', $_POST['visitor_email']);
    $visitor_email = filter_var($visitor_email, FILTER_VALIDATE_EMAIL);
    $email_body .= "<div>
                       <label><b>Visitor Email:</b></label>&nbsp;<span>".$visitor_email."</span>
                    </div>";
}

if(isset($_POST['email_title'])) {
    $email_title = filter_var($_POST['email_title'], FILTER_SANITIZE_STRING);
    $email_body .= "<div>
                       <label><b>Reason For Contacting Us:</b></label>&nbsp;<span>".$email_title."</span>
                    </div>";
}

if(isset($_POST['concerned_department'])) {
    $concerned_department = filter_var($_POST['concerned_department'], FILTER_SANITIZE_STRING);
    $email_body .= "<div>
                       <label><b>Concerned Department:</b></label>&nbsp;<span>".$concerned_department."</span>
                    </div>";
}

if(isset($_POST['visitor_message'])) {
    $visitor_message = htmlspecialchars($_POST['visitor_message']);
    $email_body .= "<div>
                       <label><b>Visitor Message:</b></label>
                       <div>".$visitor_message."</div>
                    </div>";
}

if($concerned_department == "feedback") {
    $recipient = "myemail@gmail.com";
}
else if($concerned_department == "reservation") {
    $recipient = "myemail@gmail.com";
}
else if($concerned_department == "other") {
    $recipient = "myemail@gmail.com";
}
else {
    $recipient = "myemail@gmail.com";
}

$email_body .= "</div>";

$headers  = 'MIME-Version: 1.0' . "\r\n"
.'Content-type: text/html; charset=utf-8' . "\r\n"
.'From: ' . $visitor_email . "\r\n";

if(mail($recipient, $email_title, $email_body, $headers)) {
    echo "<p>Thank you for contacting us, $visitor_name. You will get a reply within 24 hours.</p>";
} else {
    echo '<p>We are sorry but the email did not go through.</p>';
}

} else {
echo '<p>Something went wrong</p>';
}
?>

任何帮助将不胜感激。谢谢!:)

4

0 回答 0