我想从html文档生成Pdf文档。我正在使用mPDF类。
我的想法是从html获取body元素并将其发送到我的pdfgenerator php。 像这样:
$mpdf=new mPDF();
$mpdf->Bookmark('Start of the document');
$mpdf->WriteHTML($_POST['html']);
$mpdf->Output();
问题:如何从我的html通过PHP DOM扩展获取body元素并将其发送到pdfgenerator?
答案 0 :(得分:0)
您可以使用
document.body.innerHTML
获取HTML。然后使用XMLHttpRequest
发送它var html = document.body.innerHTML;
var httpRequest = new XMLHttpRequest();
httpRequest.open('GET', 'http://example.com/pdfgeneration.php', true);
httpRequest.send('html=' + encodeURIComponent(html)
答案 1 :(得分:0)
如果你打算这样做,你可以使用jQuery(或AJAX)将内容发布到你的HTML。
代码写得很快,可能不完美 - 请用它作为灵感,而不是copypasta。
var html = $('body').innerHTML();
$.ajax({
type: "POST",
url: /pdfgenerator.php,
data: data,
success: success,
});
答案 2 :(得分:0)
在javascript中使用textarea创建表单并在iframe中添加。然后添加一个处理程序onclick所以当单击该按钮时,javascript会将body.html(以及<body></body>
标签添加到iframe表单textarea并提交给其他php)
或者,您可以使用Ajax同样发布请求
答案 3 :(得分:0)
使用jquery
获取html,AJAX
发布html数据
var html = $('body').innerHTML();
$.post( "pdfgenerator php", {html: html}, function( data ) {
});
确保在pdfgenerator.php
$stylesheet = file_get_contents('style.css');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML($_POST['html'],2);
$mpdf->Output();