Я знаю, что есть как минимум два других подобных вопроса, но они мне не помогают.
У меня есть textarea с tinymce, где пользователь пишет свой текст. Затем есть кнопка «PDF», которая должна создать PDF-файл и открыть его на новой вкладке. Содержание pdf – это содержание в тиниме.
Когда пользователь нажимает кнопку, форма отправляется в действие index.php. Затем index.php собирает информацию из переменной $ _POST и создает pdf.
Я не могу открыть его на новой вкладке в качестве обычной ссылки. Я попробовал это по-разному.
1) Я могу открыть PDF на той же вкладке, но это не то, что мне нужно. Эта строка открывает мой pdf-файл на той же вкладке:
$dompdf->stream('document.pdf',array('Attachment'=>0));
2) Я могу открыть его в новом окне, но затем браузер предупреждает, что это всплывающее окно. Клиент этого не хочет. Еще одна проблема заключается в том, что pdf хранится на сервере. Я не хочу этого (всплывающее предупреждение более важно). Вот мой код:
$output = $dompdf->output(); file_put_contents('document.pdf', $output); //save pdf on server //opens generated pdf in new window, but this creates warning for popup echo '<script type="text/javascript" language="javascript"> window.open("http://modeles-de-lettres.org/test/saved_pdf.pdf", "_blank"); </script>';
Я прочитал:
1) Откройте PDF на новой вкладке, используя dompdf
Это говорит о следующем: «Что касается открытия на новой вкладке, это зависит от того, как вы создаете PDF-файл, но самый простой способ предоставить ссылку с целевым атрибутом». Я думаю, это означает, что у меня есть
<a href="my.pdf" target="blank"
или
<a href="my.php" target="blank"
Но это не работает для меня, потому что я должен ПОЧТОВИТЬ свою форму, чтобы получить данные из pdf.
2) создать pdf на newtab в dompdf
Это то, что я реализовал ранее (я сделал это без сеансов), но он создает предупреждение о всплывающих окнах.