作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我目前使用 wkhtmltopdf
,我试图在用户在我们的网站上提交表单后生成 .pdf
文件。表单数据被提交到 post.php
,在那里它作为格式化的网页很好地显示。我想生成这个确切页面的 .pdf 文件。
但是当尝试执行 wkhtmltopdf
时问题就开始了。我得到一个连续循环,因为我试图从这个 post.php
文件内部生成 .pdf,这也是目标。
我也尝试过 include()
一个单独的 PHP
文件来处理 exec()
函数,但我仍然得到一个连续的循环。
也许下面的视觉效果会有所帮助:
form.php
包含如下内容...
<form id="ecard" action="post.php" method="post">
<input type="text" name="ecard_message" />
<input type="submit" />
</form>
post.php
保存发布的数据并包含 HTML
就像这样...
<div class="content">
<?php echo $_POST['ecard_message']; ?>
</div>
<?php exec("wkhtmltopdf http://example.com/post.php ecard.pdf"); ?>
当 exec()
函数与这些文件分开运行时,我的代码确实有效,但是我如何在同一进程中自动完成 exec()
呢?
非常感谢任何见解。
最佳答案
调用 wkhtmltopdf http://example.com/post.php ecard.pdf
将丢失发布数据,因此即使有效,pdf 也将为空。
而是将 pdf 生成为 html,然后将其传递给 wkhtmltopdf。例如:(未测试)
<?php
$html = '<div class="content">' . $_POST['ecard_message'] . '</div>';
exec("echo $html | wkhtmltopdf - ecard.pdf");
?>
参见 Is there any wkhtmltopdf option to convert html text rather than file?用于解释使用文本而不是文件。
关于php - 如何将 wkhtmltopdf 与 POST 数据一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40194417/
我是一名优秀的程序员,十分优秀!