2013-02-24 20 views
-1

我正在構建一個網絡平臺,遊客可以向專業人士提問,這些專業人員分爲幾個不同的類別。使用PHP從MySQL數據庫表發送電子郵件給具有特定字段的收件人?

我有以下表格: - 「問題」(包含問題,訪客的電子郵件地址和類別) - 「專業人士」(包含相關信息,專業的電子郵件和類別) - 「迴應」 (包含回覆,問題ID和專業ID)

好吧,這是我想要做的: - 當'questions'表更新時,我希望平臺發送電子郵件給專業人士所選的類別。

    當專業解答的問題,我想發送電子郵件給訪問者

當數據庫更新時,我已經收到一封管理員電子郵件,所以我知道這可以做到。

B.T.W.,我是新手,所以很多細節請!

感謝您的幫助!

伊恩

+0

如何更新'questions'和'響應'表?在此期間收到電子郵件地址併發送電子郵件。 – Eggplant 2013-02-24 22:21:51

+1

除了說「添加代碼發送電子郵件更新」我不知道如何回答 – 2013-02-24 22:25:23

回答

2

如果你有很多專業人士表人才,這將是最好使用一種PHP郵件排隊系統。否則,該腳本可能會運行很長時間,並且在執行時間範圍內從未完成。最好在後臺執行(例如每10分鐘執行一次cron作業)。

讓我們假設只有兩個專業人員。

當您更新數據庫以插入新問題時,請從類別中提取專業人員列表。你需要把問題的類別到一個變量(如$類)

$results = mysql_query("SELECT email FROM professionals WHERE category=$category"); 

現在你有一個包含所有有關該類別的專業人士的電子郵件的結果集。把所有這些整齊地放入一個數組中。

$emails = array(); 
while($row = mysql_fetch_assoc($results)){ 
       $emails[] = $row['email']; 
    } 

我們有專業人士的電子郵件的數組,現在我們需要發郵件給他們:

foreach($emails as $email){ 
     mail($email,"A new question in your category!","Text goes here"); 
     } 

的更多信息:http://php.net/mail

+0

哇!這非常好! 感謝PseudoOne! 我想我可以扭轉'響應'表更新的過程。 我將有超過100名專業人士。我猜是更好的一個cron工作! 您的幫助非常感謝! :) 保重! Ian – user2105475 2013-02-25 01:23:37

相關問題