Create PDF with DOMPDF and Redirect

て烟熏妆下的殇ゞ 提交于 2019-12-02 07:52:14
Treffynnon

Answer to question

For this to work you would need to move the second header call into the PDFRecipt file. At the moment with both of them in the one file your second call to header is overriding the first.

Remember that headers are sent when the output is sent to the users browser, which is why you often see people calling exit() right after a header('Location: http://example.org');.

So any subsequent calls to set the same header, in this case Location, will override the first until the headers are sent.

It is also worth pointing out that you should be using full web URLs in Location:

HTTP/1.1 requires an absolute URI as argument to » Location: including the scheme, hostname and absolute path, but some clients accept relative URIs. You can usually use $_SERVER['HTTP_HOST'], $_SERVER['PHP_SELF'] and dirname() to make an absolute URI from a relative one yourself

according to the header page in the manual: http://php.net/manual/en/function.header.php

Update from comments

So you are using the stream() method to send the client the PDF - you cannot combine this with a Location: header. This is because DOMPDF has already flushed content to screen. I had assumed that your PDFRecipt.php file was storing the PDF to disk somewhere.

See DOMPDF source code for more details: http://code.google.com/p/dompdf/source/browse/trunk/dompdf/lib/class.pdf.php#3061

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!