我最近刚被要求开发一个允许群发电子邮件的PHP应用程序。为了做到这一点,我有一个PHP脚本,它简单地从MySQLDatabase中获取电子邮件地址,并循环通过它们,对每个地址进行个性化设置,然后发送它们。
它工作得很好,但是我们有一个小问题,当这个PHP脚本运行时(显然需要几分钟才能运行),用户不能在应用程序上做任何其他事情。其他人可以访问它,但有问题的用户不能在电子邮件发送期间加载应用程序的任何其他页面。
有没有办法解决这个问题,或者这只是我们不得不接受的事情?
发布于 2011-10-26 13:59:48
本例中的用户打开了一个到该页面的会话,该页面当前正在处理一个PHP页面。因此,用户无法(在同一会话中)打开同一站点上的另一个页面。
处理此问题的一种方法是由用户启动此进程,但不要让用户访问的脚本发送电子邮件。例如,您可以在数据库中创建一个"todo“列表,然后让cronjob来处理它。这样,用户仍然能够访问其他页面。
发布于 2011-10-26 13:58:47
确保长时间运行的脚本没有应用会话。
https://stackoverflow.com/questions/7903667
复制相似问题