我目前正在使用Codeigniter在我的实习中创建一个系统。该系统将能够为用户创建服务请求。创建请求后,将自动向批准者(另一个用户)发送电子邮件,以通知他该请求。 (这已经实施)。然后,审批者将决定是批准还是拒绝该请求。现在,我的新任务是,如果审批人仍未批准/拒绝系统中的请求,他将在其电子邮件中每隔30分钟收到频繁的通知。我怎样才能做到这一点?
答案 0 :(得分:1)
您需要创建一个具有检查批准状态的功能的控制器,如果未批准则发送电子邮件。
例如
scanf(" %99[^\n]", str);
现在,我们的下一步是每30分钟执行一次class checkapproval extends CI_Controller {
public function index()
{
// Database query to fetch all pending approval.
// $records = $this->db->where('status !=','approve')->get('table_name');
// foreach($records as $record){
// send email
// updated email timestamp in databse for record
// }
}
}
。这是我们要求的cron工作。
我们需要在cron作业中设置命令,如下所示,每30分钟执行一次。
index
有关codeigniter CLI的更多详细信息,请查看HERE
答案 1 :(得分:0)
您需要在数据库中为该用户设置一个字段,该字段计算他通过电子邮件发送的次数以及上次发送电子邮件时的时间戳....然后是一个cron-tabbed脚本(每次运行一次) 30分钟)将检查用户是否对请求采取了行动....如果没有;发送另一封电子邮件并使用发送的电子邮件数量(递增)和新电子邮件发送时的unix时间戳更新数据库字段。
答案 2 :(得分:0)
您应该使用cron作业来执行此操作。 用于检查是否存在未处理请求的脚本。 如果他有未处理的请求,请给他发电子邮件。