繁体   English   中英

给申请人的提醒电子邮件

[英]Reminder email for applicants

我有一个应用程序系统,用户可以在其中保存自己的信息,但不能提交。 显然,如果未在截止日期之前提交所有内容,则需要提醒他们。 我可以执行的基本方法是,如果已提交,则数据库中的字段可以标记为1。但是,如果为0,我希望发送一封电子邮件来提醒他们。

为了使事情变得更复杂,从截止日期前的4周开始,我希望该周发送1封电子邮件,在截止日期前3周发送2封电子邮件,依此类推,直到他们在截止日期前1周收到4封电子邮件。 (显然是在一周内摊开的)。

我觉得每周只有一个对我来说足够复杂,因为我还很新!

研究它似乎好像我需要一个Cronjob,但是如果无论如何要避免这种情况(触发),那会更好!

Cron作业一开始令人生畏,并且相关的过程可能看起来很困难,但可以分解为多个部分。 而且,脚本会随着您学习和考虑要包含的内容而增长。 不知道您的数据库结构,也许大纲会帮助您入门。

确定运行脚本的频率(每天,每6小时等)
许多主机使用cPanel进行管理。 它具有可与Cron Jobs一起使用的图标,以及简单或专家设置模式的选择。 它还可能具有示例设置。 您将输入日,月,年,小时和分钟的数字或*(星号)以表示所有可能的数字。
对于初学者来说,另一个难点是用来告诉服务器如何处理以及处理什么文件的命令。 它花费了大量的阅读和反复试验。
例如:php -q /home/your_account_name/public_html/admin/yourfile_cron.php(服务器上的开头可能有所不同)

在脚本中:
(使用完整的路径详细信息以避免以后出现问题,例如以上以/ home开头的内容)

  1. 设置一些常量(调试文件,数据库密码文件等)
    使用fopen和fwrite记录屏幕上看不到的内容
  2. 首先查询数据库以查找用户名和要发送的电子邮件
  3. 处理结果查询及其数据
  4. 建立电子邮件
  5. 发送邮件
    根据服务器,选择邮件程序。 在某些情况下,mail()不会在localhost外发送。 (PHP Mailer是一个选项)
  6. 使用文件运行结果更新数据库并发送

您可以通过在浏览器中访问脚本并包含一些“ echos”来运行脚本进行测试。 Cron作业通常没有(或不需要)屏幕输出。 在测试过程中,我使用自己的电子邮件作为静态收件人。

希望能帮助您入门。 这是一项艰巨的任务,需要几天的时间才能完成。 当它最终满足您的要求时,您会发现它很有意义!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM