PDF текущей формы должен быть создан при нажатии на ссылку с помощью jquery

0

Я хочу сохранить текущую страницу в формате PDF, щелкнув ссылку.

Мой html-код

<a id="pdf" href="javascript:void(0)">
          Download PDF
</a>

Я пробовал этот код, но он не работает

require_once('dompdf_config.inc.php'); //on including this i get a blank page

сценарий на одной странице

<script type="text/javascript">
$(document).ready(function(){
$("#pdf").click(function(){
var html = $("body").html();
$.post( "d1.php",{ data: html});
});
});
</script>

d1.php содержит

<?php
$html = $_POST['data'];
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("myCV.pdf");
?>

пожалуйста, помогите мне в его исправлении. Запустите меня, если есть какое-то лучшее решение.

заранее спасибо

  • 0
    у вас включен отчет об ошибках? Могут ли быть какие-либо конкретные сообщения об ошибках, которые вы можете получить, когда видите пустую страницу?
  • 0
    Вы также можете сделать var_dump ($ html) на d1.php, чтобы увидеть, что отправляется на d1.php
Показать ещё 7 комментариев
Теги:

1 ответ

0

Включение файла..

require_once('dompdf_config.inc.php');

... фактически принадлежит вершине d1.php. Кроме того, в d1.php у вас есть строка:

$html = urldecode($_POST['html']);

Однако у вас нет полей формы с именем "html", поэтому я не уверен, как вы получаете эти данные для публикации в этом файле. И у вас есть скрытое поле формы с идентификатором "#hidden_form", но вы, похоже, намереваетесь вызвать функцию submit() в форме, которая не имеет атрибута id. Вы должны добавить атрибут id в форму со значением "hidden_form" (нет #), если вы хотите вызвать функцию таким образом.

Это, по-видимому, не самый эффективный способ сделать то, что вы хотите, но я верю, что если вы начнете с этих вещей, вы будете ближе к тому, где вы хотите быть. Когда все будет сделано, если у вас все еще есть проблемы, включите отчет об ошибках, как указано выше.

  • 0
    Я отредактировал свой код. Я удалил свою форму и отправил данные через jquery на страницу d1.php
  • 0
    данные в почтовом запросе должны быть объектом. $.post(url { data:{html_data:html} } ); Затем в бэкэнде $html = $_POST['html_data'];
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню