我想将我的用户重定向到一个新页面,但当前网站继续运行脚本,在指定地址10分钟后发送线程消息。我想是这样的:超时处理电子邮件php
Header('Location: xy.com');
sleep(100);
do_the_email_sending_here();
但实际上它并没有奏效,因为该网站在等待100秒,因此该网站没有立即重定向我。任何想法如何解决这个问题?任何想法while()或for()循环?
我想将我的用户重定向到一个新页面,但当前网站继续运行脚本,在指定地址10分钟后发送线程消息。我想是这样的:超时处理电子邮件php
Header('Location: xy.com');
sleep(100);
do_the_email_sending_here();
但实际上它并没有奏效,因为该网站在等待100秒,因此该网站没有立即重定向我。任何想法如何解决这个问题?任何想法while()或for()循环?
该问题的解决方案:Cron Job,良好的学习。
试试这个:
Header("Refresh: 600;", "Location: xy.com");
do_the_email_sending_here();
的Refresh: 600;
将瓶坯你的头600秒或10分钟。
这不好。我立即想要重定向,并将其保留在服务器上运行的php。 – szebasztian
仅仅因为你发出了header()调用并不意味着客户端会奇迹般地开始去那里。它可能会去那里,但不需要,直到脚本的其余部分完成。无论如何,睡眠(100)将等待100秒。你应该使用一个作业调度程序,例如'at'在将来发送电子邮件的时间为+10分钟,而不是希望用户不会逃脱并导致脚本关闭。 –
我不认为你可以做到这一点没有更多的..你用来冲洗缓冲区,但我认为你不能再发送partials或更确切地说,现代浏览器不会显示partials ..但我可以错误.. –
我会尝试以不同的方式提出问题。共有3页。希望将用户从“A”站点重定向到“B”站点,而不是从“B”站点到“C”站点。如果用户离开“B”站点或因特网连接发生了问题,并且他无法到达C站点,则比我想发送电子邮件。像这样的东西“哦,看起来停下来”。任何其他解决方案都可以。 – szebasztian