2016-07-11 69 views
0

我是PHP的新手,但是我發現了一些Web表單的示例代碼。我適應它像這樣,在一個名爲contact.php:試圖用Bluehost創建一個使用PHP的聯繫表格

<?php 
    mail('[email protected]', $_POST['name'], $_POST['email'], $_POST['subject'], $_POST['message']); 
?> 
<p>Your message has been sent.</p> 

和這裏的HTML:

 <form action="contact.php" method="post" enctype="text/plain"> 
      Name<br> 
      <input type="text" name="name" value=""><br><br> 
      Email<br> 
      <input type="text" name="email" value=""><br><br> 
      Subject<br> 
      <input type="text" name="subject" value=""><br><br> 
      Message<br> 
      <textarea name="message" rows="10" cols="50"></textarea><br><br> 
      <input type="submit" value="SUBMIT"> 
     </form> 

這是行不通的,所以我做了一些研究,發現BlueHost的需要你爲此使用他們自己的Bluemail。所以我放棄了PHP並遵循他們的教程。那也沒用,所以我做了一些更多的研究,發現他們停止了Bluemail。所以我回到PHP方法,並將電子郵件更改爲一個藍色的電子郵件地址(顯然這也是必需的)。

長話短說,我查看了我的垃圾郵件文件夾,發現一些我嘗試從表單發送的測試電子郵件,但它們都是空白的。沒有主題,沒有消息內容。

所以看起來聯繫表格正在工作(在它發送電子郵件),但表格中輸入的實際信息沒有通過。我認爲我的PHP代碼有問題?

任何幫助將不勝感激!

回答

0

好像你正在使用錯誤的語法郵件 嘗試

<?php $msg = $_POST['name']."<br/>". $_POST['email']."<br/>". $_POST['message']; mail("[email protected]",$_POST['subject'],$msg); ?>

0

你可以試試這個代碼(也許會爲你工作):

<?php 
$msg = $_POST['name']."<br/>". $_POST['email']."<br/>". $_POST['message']; 
if (isset($_POST["email"])) { 
mail($_POST["email"],$_POST['subject'],$msg); 
    echo "Your message has been sent.";  
}else{ 
    echo "N0, mail is not set"; 
} 
?>