2013-05-30 114 views
0

希望只是一個簡單的問題,我有一個表格設置像這樣 - 電子郵件,名稱&消息。它是如何在發送時檢查它是否有這3件事情,如果是,它會發送到所需的電子郵件?發送電子郵件與PHP混淆

我試過看php的文檔,但我沒有太多的意義。今天我有點厚。 感謝您:)

<form action="" method="post"> 
     <!--[if IE]> <br> <label for="email">Email</label> <br> <end if --> 
     <input type="email" name="email" id="email" placeholder="Email*" required> 
      <br> 
     <!--[if IE]> <br> <label for="name">Name</label> <br> <end if --> 
     <input type="text" name="name" id="name" placeholder="Name*" required> 
      <br> 
     <!--[if IE]> <br> <label for="message">Message</label> <br> <end if --> 
     <textarea name="message" id="message" placeholder="Description*" required></textarea> 

     <input type="submit" value="Send"> 
    </form> 

我已經得到了電子郵件的PHP代碼在這裏 - 這是怎麼回事錯在這裏? (也許我可以編輯的工作?)抱怨2個參數,而不是3

<?php 
if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
    if (mail('[email protected]', 
     "Name: " . $_POST['name'] . PHP_EOL . 
     "Email: " . $_POST['email'] . PHP_EOL . 
     "Message: " . $_POST['message'])) { 
     $status = "Sent"; } } 
?> 
+1

你需要首先捕獲你的提交動作,然後檢查字段的值,然後發送郵件 – Dave

+1

'bool mail(string $ to,string $ subject,string $ message [,string $ additional_headers [,string $ additional_parameters]]) '你錯過了這個主題 – 2013-05-30 09:41:51

回答

1

我徹底忘了添加主題行(謝謝你提供的@Dagon) - 這裏的正常碼

PHP

<?php 
if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
    if (mail('[email protected]', 
     'Enquiries', 
     "Name: " . $_POST['name'] . PHP_EOL . 
     "Email: " . $_POST['email'] . PHP_EOL . 
     "Message: " . $_POST['message'])) { 
     $status = "Sent"; } } 
?> 

HTML

<form action="" method="post"> 
     <!--[if IE]> <br> <label for="email">Email</label> <br> <end if --> 
     <input type="email" name="email" id="email" placeholder="Email*" required> 
      <br /> 
     <!--[if IE]> <br> <label for="name">Name</label> <br> <end if --> 
     <input type="text" name="name" id="name" placeholder="Name*" required> 
      <br /> 
     <!--[if IE]> <br> <label for="message">Message</label> <br> <end if --> 
     <textarea name="message" id="message" placeholder="Description*" required></textarea> 

     <input type="submit" value="Send"> 
    </form> 
+0

似乎缺少代碼來檢查變量是否填滿了,這就是我的回答。 – 2013-05-30 19:52:30

1
if(!empty($_POST['email']) && !empty($_POST['name']) && !empty($_POST['message'])){ 
//send email code 
}else{ 
//dont 
}