2012-11-05 62 views
3

我試圖使用PHP郵件功能向我發送一封包含所有發佈變量的電子郵件。獲取所有POST數據併發送電子郵件

到目前爲止,我有這個...

$message = foreach ($_POST as $key => $value) 
echo "Field ".htmlspecialchars($key)." is ".htmlspecialchars($value)."<br>"; 

$message = wordwrap($message, 70); 

mail('[email protected]', 'sghting', $message); 

只有消息被提交是我的最後一個職位的記錄,任何人可以看到我去錯了嗎?

回答

12
foreach ($_POST as $key => $value) 
    $message .= "Field ".htmlspecialchars($key)." is ".htmlspecialchars($value)."<br>"; 

mail('[email protected]', 'sghting', $message); 

$message = foreach ($_POST as $key => $value)是不正確的,這將迭代結果並存儲最後一個。您想要將值存儲在$ message變量中,而不是回顯它們。

+0

感謝@MitchS,有沒有辦法把每條記錄放在一個新的線上? – Liam

+0

是:'「\ r \ n」'。如果電子郵件是HTML的話,HTML換行符(如代碼中的內容)將起作用(查看有關如何發送HTML電子郵件的「郵件」文檔)。但是如果你需要新的行,'\ r \ n「'將起作用。 –

0
$message = ""; 
foreach ($_POST as $key => $value) 
$message .= "Field ".htmlspecialchars($key)." is ".htmlspecialchars($value)."<br>"; 

mail('[email protected]', 'sghting', $message); 
相關問題