2017-08-29 114 views
0

我讓我的網站生活,並決定測試我的聯繫表單,這是我在網上找到的一個簡單的php腳本。這似乎很簡單,但我無法弄清楚爲什麼我會死「錯誤!」當我填寫所有字段並點擊我的直播網站上的提交。我沒有任何使用PHP的經驗,所以在這裏的任何幫助將非常感激! PHP:簡單的php聯繫表單出現這種錯誤的原因是什麼?

<?php 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $subject = $_POST['subject']; 
    $message = $_POST['message']; 
    $formcontent="From: $name \n Email: $email \n Subject: $subject \n Message: $message"; 
    $recipient = "[email protected]"; 
    $subject = "Customer Contact Message"; 
    $mailheader = "From: $email \r\n"; 
    mail($recipient, $subject, $formcontent, $mailheader) or die("Error!"); 
    echo "Thank you for contacting us."; 
?> 

HTML:

<form class="contact-form" id="contact-form" action="contactform.php" method="post"> 
    <div class="col-md-6"> 
    <input placeholder="Name" name="name" type="text"> 
    </div> 

    <div class="col-md-6"> 
    <input placeholder="Email" name="email" type="text"> 
    </div> 

    <div class="col-md-12"> 
    <input placeholder="Subject" name="subject" type="text"> 
    </div> 
    <div class="col-md-12"> 
    <textarea placeholder="Message" name="message"></textarea> 
    </div> 
    <div class="col-md-12"> 
    <button class="btn submit-btn btn-primary" type="submit">Send Message</button> 
    </div> 
</form> 
+1

它只是意味着'mail()'函數返回false,所以你的郵件設置有問題。 – FMashiro

+2

永遠不要相信用戶輸入,驗證/清除所有'$ _POST'值。 – Script47

+0

這可以作爲一個有趣的小實驗來完成,但是你不應該部署這段代碼。它很容易被壞人濫用來發送垃圾郵件。 –

回答

0
<button class="btn submit-btn btn-primary" type="submit">Send 
Message</button> 
instead use this: 

<input type="submit" class="btn submit-btn btn-primary" value="Send Message" 
name="submit"> 

And your php script will be like this: 
<?php 
    if(isset($_POST['submit'])){ 
     $name = $_POST['name']; 
     $email = $_POST['email']; 
     $subject = $_POST['subject']; 
     $message = $_POST['message']; 
     $formcontent="From: $name \n Email: $email \n Subject: $subject \n 
     Message: $message"; 
     $recipient = "[email protected]"; 
     $subject = "Customer Contact Message"; 
     $mailheader = "From: $email \r\n"; 
     mail($recipient, $subject, $formcontent, $mailheader) or 
     die("Error!"); 
     echo "Thank you for contacting us."; 
    }  
?> 
0

當我第一次開始學習PHP,我發現設置電子郵件的形式麻煩,我會建議您嘗試了以下服務:https://formspree.io/它簡化整個過程爲你免費。

相關問題