我的网站上有一个表单,该表单使用POST
提交给PHP。除其他外,PHP然后使用带有SMTP的PHPMailer发送邮件。使用$success = $mail->send();
确定邮件是否成功。然后根据该结果,我想将某些详细信息保存在Cookie中。
当我使用setcookie($cName, $cVal, time()+(60*60*24*365), "/", "", 0);
设置cookie时,出现错误告诉我Cannot modify header information - headers already sent by...
PHPMailer可以正常工作-已发送电子邮件。当我注释掉PHPMailer行时,setcookie()可以正常工作-设置了cookie。我猜想PHPMailer和setcookie()都会自动将标头发送回客户端。
PHPMailer中是否有一个选项可以发送邮件而无需将标头写回客户端?我以为$mail->SMTPDebug = 2;
可能会导致发送标头,但我将其更改为0,仍然是同样的问题。
我可以让setcookie()仅更新标头信息而不实际发送标头吗?
基本上,我希望PHP在将任何标头发送回客户端之前执行其所有操作。我可以控制何时发送标头吗? ...而我们正在查看时,实际发送回的信息是什么?