2013-06-05 78 views
0

我這個指南: http://www.w3schools.com/php/php_mail.asp是否可以編寫整個電子郵件並使用PHP命令發送?

所以按照本指南操作可我真的打開此頁面我在Chrome或其他互聯網稱爲「email.php」發送電子郵件給自己([email protected])瀏覽器嗎?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 

<body> 
<h1> Email Application </h1> 

<?php 
$to = "[email protected]"; 
$subject = "Test mail"; 
$message = "Hello! This is a simple email message."; 
$from = "Some Guy"; 
$headers = "From:" . $from; 
mail($to,$subject,$message,$headers); 
echo "Mail Sent."; 
?> 

</body> 
</html> 

我試着在本地看到上面看到的email.php,但沒有任何反應。我需要將email.php放在服務器上嗎?

我目前正在處理聯繫表單,並且希望將所有在聯繫表單字段中輸入的信息發送到指定的電子郵件地址。我正在爲一家公司的網站做這件事。

+1

PHP;如果你只是在本地打開文件,它不會做任何事情。 – andrewsi

+6

@andrewsi這是正確的,再加上你還需要一個與它一起運行的「郵件服務器」。 – reikyoushin

+0

'網絡主機'是您的第一步,然後是奶油和肉汁。但是,您發佈的代碼不會執行任何操作;好吧,有點。 –

回答

4

是的,PHP可以發送電子郵件。但是你需要在php.ini中配置一個郵件(SMTP)服務器。

如果您有本地運行的郵件服務器,則php.ini默認設置爲使用它。不要忘記打開郵件服務器並將其配置爲允許中繼本地郵件。

我有一個遠程郵件服務器(你甚至可以使用Google's SMTP server),設置php.ini來使用它。

您可能需要更改

mail($to,$subject,$message,$headers); 
echo "Mail Sent."; 

if (mail($to,$subject,$message,$headers)) 
    echo "Mail Sent."; 
else 
    echo "Failed sending e-mail"; 
+0

確實。總是檢查郵件功能的結果,看看郵件是否正確發送。 –

+0

馬特,這是否回答你的問題? –

0

這發生因您的SMTP設置,而不是你的代碼。你應該確認你的smtp設置正確。

嘗試使用

echo ini_get("SMTP"); 
echo ini_get("smtp_port"); 

爲了讓您的SMTP詳細信息。檢查你的php.ini

它應該是這種格式需要通過Web服務器上運行

[mail function] 
; For Win32 only. 
SMTP = localhost 
smtp_port = 25 



    <?php 
     $to = "[email protected]"; 
     $subject = "Test mail"; 
     $message = "Hello! This is a simple email message."; 
     $headers = "MIME-Version: 1.0\r\n"; 
     $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
     $headers .= "From: XYZ <xyz.com>\r\n"; 
     if(mail($to,$subject,$message,$headers)) 
     { 
      echo "Mail Sent."; 
     } 
     else 
     { 
      echo "Mail Failed "; 
     }   
?> 
相關問題