我想使用电子邮件创建用户通知系统。
在上下文中,员工(用户类型1)登录我的系统并输入他们的时间表(他们工作的时间)。我希望将通知发送给他们的主管(也是'users'
表(用户类型2)的成员,他们已输入信息并准备好进行检查。
目前我有一个包含表'users'
的数据库,用于存储'id' (PRIMARY) AUTO INCREMENTING, 'first_name', 'last_name', 'email', 'user_type', etc
等信息。
我知道如何用PHP发送电子邮件,而且我有一个功能齐全的登录系统,但是这些通知我无法理解如何实现。
我当前的代码不是面向对象的,因为它目前超出了我的技能水平。
我想要一些简单的东西,它不一定是完美的。非常感谢任何建议。
答案 0 :(得分:2)
当员工成功输入时间表时,您是否可以获取用户列表然后向他们发送所有电子邮件?我猜测时间表是一个Web表单,所以只需在表单提交时触发一些代码。
例如:
<?php
foreach($supervisor_user as $su) {
mail(...);
}
?>
然而,可能更好的是定期检查(使用cronjob
)新的时间表,然后通过电子邮件向所有主管发送有关任何新时间表的信息。
我不会为此编写完整的PHP,它更像是伪代码大纲:
<?php
$last_check = /* Fetch the time we last checked for timesheets */
$new_timesheets = /* Fetch all timesheets submitted after this time */
/* Construct the e-mail message */
$message = "Hello, here are the new timesheets. \n";
foreach($new_timesheets as $ts) {
$message .= "* $ts \n";
}
/* Send a message to all supervisors */
$supervisors = /* Fetch e-mails of all supervisors */
foreach($supervisors as $s) {
mail(...);
}
/* Finally, store the time we last checked for timesheets
so that we can use this on the next run. */
?>
然后,您可以将其设置为每天运行,这意味着主管每天都会收到一封摘要电子邮件,而不是每次提交的时间表都会收到电子邮件的轰炸。
答案 1 :(得分:0)
to spacediver - 在这种情况下,哪些是现成的系统?我们有相同的项目,但感觉现成的系统可能对我们更好。请解释一下!
瑞克