2012-10-27 163 views
1

我試圖發送一封電子郵件,使用PHP mail函數來通過多選表單選擇多個電子郵件地址,而不用爲每個循環執行一次。我目前將電子郵件地址保存爲一個數組,但PHP郵件函數返回一個錯誤,說它只接受一個參數。關於如何使這項工作的任何想法?如何通過多選表單將電子郵件發送到多個電子郵件地址?

+0

收集電子郵件地址轉換成一個參數使用'implode(「,」,$ array)' –

+0

聰明的想法,讓我試試吧:) – user1751581

+0

我得到這個錯誤:警告:implode()[function.implode]:無效的參數傳遞/ home/content/06/9464206/html/BackOffice/Send Email.php on line 113 – user1751581

回答

1

我假設你的選擇看起來是這樣的:

<select multiple="multiple" size="3" name="emails[]"> 
    <option value="[email protected]">Jane</option> 
    <option value="[email protected]">Jimmy</option> 
    <option value="[email protected]">John</option> 
    <option value="[email protected]">James</option> 
</select> 

在這種情況下,E-mail地址的列表將被作爲數組返回到你的PHP(注意空方括號name屬性)。要發送電子郵件給所有選定的地址沒有一個循環,你可以用逗號破滅您的數組,並將其送入PHP mail函數的第一個參數,像這樣:

<?php 
    $addresses=implode(", ", $_POST["emails"]); 
    mail($addresses, "Important message", "To whom it may concern, bla bla bla"); 
?> 
+0

完美!謝謝!很好的例子! – user1751581

+0

雖然我需要一些聲望來投票 – user1751581

相關問題