0
A
回答
1
您的問題是1中的2。您在詢問如何識別未在一段時間內登錄的用戶以及如何向他們發送電子郵件。我將相應地分開回答。所有這些都可以通過cron完成,但我不使用Moodle,因此我不知道可以使用哪些插件。
他是一個查詢的示例,可以識別180天內未登錄的用戶(但會忽略那些從未登錄過的用戶)。
SELECT * FROM mdl_user
WHERE lastlogin < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 180 DAY))
AND lastlogin != 0
AND lastaccess < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 180 DAY))
AND deleted = 0
現在的電子郵件位。根據Google,Moodle使用PHPMailer作爲它的email_to_user()函數。在PHP中使用這個的一個例子:
email_to_user($toUser, $fromUser, $subject, $messageText, $messageHtml, '', '', true);
$ TOUSER和FROMUSER $應該是Moodle的用戶對象,而不是電子郵件地址。遍歷查詢結果來構建這些對象將是剩下的工作。
最後提示:可根據您的查詢的結果,每一個用戶對象,你可以使用get_record功能,像這樣:
$userObj = get_record("user", "id", $userID);
相關問題
- 1. 如何開始自定義日期和時間的通知?
- 2. 如何在自定義時間開始通知?
- 3. 如何在客戶端斷開連接時獲取NSNetService通知?
- 4. grpc客戶端斷開連接時可以收到通知嗎?
- 5. 如何在iOS連接或斷開連接時獲得通知?
- 6. 開始和停止來自廣播接收器的通知
- 7. 如何通知用戶更新他們的應用程序
- 8. 連接回來時的iOS通知
- 9. 通知用戶,當他們到達
- 10. 如何接收來自PayPal的通知
- 11. 如何讓用戶選擇他們的主/開始活動?
- 12. 如何獲得客戶端斷開連接的通知?
- 13. WebSockets:如何在客戶端連接斷開時通知所有訂戶?
- 14. 獲取斷開連接的用戶和登錄他們
- 15. 如何在每天的特定時間開始通知?
- 16. 如何在IBM Queue Manager斷開連接時接收通知?
- 17. JMS和ActiveMQ,如何在斷開連接時接收通知?
- 18. 我們可以處理來自其他應用的推送通知嗎?
- 19. 我們如何檢測WCF客戶端何時斷開連接?
- 20. 如何在連接丟失或恢復時通知用戶?
- 21. 如何連接以自定義元素開始的路線?
- 22. python asynchat:如何存儲個人連接的信息,以及如何知道客戶端何時斷開連接
- 23. 我們可以註冊一個web應用程序來接收來自azure通知中心的通知
- 24. 使用Register-WmiEvent來通知腳本何時開始執行
- 25. 如何使用Django通知通知用戶何時有人對他們的帖子發表評論
- 26. 顯示器連接或斷開連接時的通知
- 27. 如何知道用戶來自哪裏,如果他們來自我的另一個網站?
- 28. 我們如何讓應用用戶知道通過SSL進行連接?
- 29. 如何通過PI-ODBC使用SQL來獲取時間段開始時間?
- 30. 如何通知互聯網連接斷開,但WiFi仍連接
您應該使用Moodle的數據操作API(https://開頭的文檔。 moodle.org/dev/Data_manipulation_API)來訪問數據庫,而不是上面給出的功能。例如'$ userObj = $ DB-> get_record('user',array('id'=> $ userID));' –
這很整潔,我沒有意識到。感謝分享,我會研究並更新我的文章!我從來沒有使用Moodle,但爲此研究讓我感興趣。 –