簡體   English   中英

PHP SMTP SendGrid表單發送但沒有表單數據

[英]PHP SMTP SendGrid Form Sending but with no form data

我有一個使用SMTP SendGrid的PHP表單設置。 該表格可以很好地發送郵件,但電子郵件通過時沒有包含任何數據。 HTML表單具有匹配的name = ...我在做什么錯?

名字:
姓:
公司:
職稱:
電子郵件:
電話:
信息:

require("phpmailer.php");
    $mail = new PHPMailer();

    // SMTP & Sendgrid settings
    $mail->IsSMTP();
    $mail->Host = "smtp.sendgrid.net";
    $mail->Port = "NNN";
    $mail->SMTPAuth = "true";   // Enable SMTP authentication
    $mail->Username = "username";  
    $mail->Password = "password";
    $mail->SMTPSecure = ''; // Enable encryption, 'ssl' also accepted

    // Email headers and body
    $mail->SetFrom("myemail@email.com");
    $mail->AddAddress("myemail@email.com");

    $mail->Subject  = "Message from site.com";
    $mail->Body     = "You have a new message from your contact form on site.com \n \n First Name: $FirstName \n Last Name: $LastName \n Company: $Company \n Job Title: $JobTitle \n Email: $Email \n Phone: $Phone \n Message: $Message";
    $mail->WordWrap = 50;

    // Form fields
    $FirstName = $_POST['FirstName'];
    $LastName = $_POST['LastName'];
    $Company = $_POST['Company'];
    $JobTitle = $_POST['JobTitle'];
    $Email = $_POST['Email'];
    $Phone = $_POST['Phone'];
    $Message = $_POST['Message'];

    if(!$mail->Send()) {
      echo 'Message was not sent.';
      echo 'Mailer error: ' . $mail->ErrorInfo;
    } 
    else {
      echo 'Message has been sent.';
    }

這是HTML:

<form id="ContactForm" class="form" method="POST" action="http://staging.shipmenthq.com/mail.php" onsubmit="validateForm()">
                    <div class="formRow">
                        <div class="formHalf padRight">
                            <label>*First Name:</label>
                            <input type="text" name="FirstName">
                        </div>
                        <div class="formHalf">
                            <label>*Last Name:</label>
                            <input type="text" name="LastName">
                        </div>
                    </div>
                    <div class="formRow">
                        <span class="formFull">
                            <label>*Company:</label>
                            <input type="text" name="Company">
                        </span>
                    </div>
                    <div class="formRow">
                        <span class="formFull">
                            <label>*Job Title:</label>
                            <input type="text" name="JobTitle">
                        </span>
                    </div>
                    <div class="formRow">
                        <span class="formFull">
                            <label>*Email:</label>
                            <input type="email" name="Email">
                        </span>
                    </div>
                    <div class="formRow">
                        <span class="formFull">
                            <label>*Phone Number:</label>
                            <input type="tel" name="Phone">
                        </span>
                    </div>
                    <div class="formRow">
                        <span class="formFull">
                            <label>Message:</label>
                            <textarea name="Message"></textarea>
                        </span>
                    </div>
                    <div class="formRow">
                        <span class="formFull">
                            <input type="submit" value="Submit Form" class="button" />
                        </span>
                    </div>
                        </form>

糟糕! 我現在看到了問題。 您正在使用表單中的變量,例如$FirstName然后再分配它們。

$mail->Body分配$mail->Body // Form fields塊下方。

:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM