我正在开发一个小型项目,该项目应该通过pdf发送证书。它应该工作的方式是,客户端进入他的管理页面并填写某些信息,如姓名/年龄/日期/电子邮件等,此后,一旦提交,它应该填写PDF(用dompdf)并发送通过电子邮件发送。
我陷入了生成PDF的部分。
如果我坚持普通文本,则生成pdf就好了。一旦我开始使用内联php,它会在30秒后冻结。我发现它很奇怪,因为我把整个文件切成了一个带有小字符串变量的长句子,然后将其剪下来后,它现在显示了pdf,但它是空白的。
这是我到目前为止截断的一段。
HTML:在这个页面上,我有一个类似的测试链接:
Click this link <a href="certificate-proc.php?loc=florida&name=Lopan&courseMan=mike%20bitz">HERE</a> to send over details to fill into the certificate.
代码:在收到此信息的页面上,我有这个应该从链接获取GET信息,并将其传递给文档。
<?php
require_once('dompdf_config.inc.php');
$locs = $_GET["loc"];
$name = $_GET["name"];
$course = $_GET["courseMan"];
$date = "sunday at some time today it will happen";
//create new dompdf object
$html = ' <!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
<div id="mainW">
<?php echo $name; ?>
</div><!-- mainW ender -->
</body>
</html> ' ;
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("sample.pdf");
?>
现在,就上面而言,它应该显示名称。尽管生成了PDF,但其中没有任何内容。它的空白。 如果我拿出PHP并添加常规文本。它有效。
关于我缺少什么的任何想法?我对这一切都很新,所以任何帮助或方向都非常感谢。
先谢谢。
答案 0 :(得分:1)
您在字符串中使用<?php ?>
标记。试试这个:
$html = '... <div id="mainW">'.$name.'</div>' ...;
或者,你可以像这样添加它:
$html = '...';
$html .= $name;
$html .= '...';