将DOMElement主体发送到另一个php


Send DOMElement body to another php

我想从html文档生成一个Pdf文档。我正在使用mPDF类。

我的想法是从html中获取body元素,并将其发送到我的pdfgenerator php。类似这样的东西:

$mpdf=new mPDF();
$mpdf->Bookmark('Start of the document');
$mpdf->WriteHTML($_POST['html']);
$mpdf->Output();

问题:如何通过PHP DOM扩展从我的html中获取body元素并将其发送到pdfgenerator?

如果你打算这样做,你可以使用jQuery(或AJAX)将内容发布到你的html中。

代码写得很快,可能并不完美——请用它作为灵感,而不是模仿。

var html = $('body').innerHTML();
$.ajax({
  type: "POST",
  url: /pdfgenerator.php,
  data: data,
  success: success,
});

您可以使用

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)

用javascript创建一个带有文本区域的表单,并在iframe中添加插件。然后添加一个处理程序onclick,这样当点击按钮时,javascript会添加body.html(如果需要,还可以将<body></body>标记添加到iframe表单文本区域并提交到其他php)

或者,您可以使用Ajax以类似的方式发布请求

使用jquery获取html,使用AJAX发布html数据

var html = $('body').innerHTML();
$.post( "pdfgenerator php", {html: html}, function( data ) {
});

确保在pdfgenerator.php 中添加css文件

$stylesheet = file_get_contents('style.css');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML($_POST['html'],2);
$mpdf->Output();