【发布时间】:2014-10-28 09:29:02
【问题描述】:
我使用 tcpdf 在我的站点中生成 pdf...
我使用代码从mysql中检索数据并将其显示在pdf文件的表格中...
$pdf->writeHTML('<table width="600px" border="1px">');
//data iteration
include('../connect.php');
$rer = mysql_query("SELECT * FROM complaint WHERE DATE_FORMAT(date_time,'%Y-%m-%d') between '$rep_from' and '$rep_to' order by id DESC;",$con);
while($rr=mysql_fetch_array($rer))
{
$id=$rr['id'];
$c_id=$rr['ref_id'];
$pdf->writeHTML('<tr><td>'.$c_id.'</td></tr>');
}
$pdf->writeHTML('<table>');
问题是代码和迭代工作正常......但是当我使用表格标签时,我会显示
Warning: array_push() expects parameter 1 to be array, null given in tcpdf.php on line 22165
文件中的这一行与表格有关...我的代码有什么问题???
提前谢谢...
【问题讨论】:
-
我没有看到任何
array_push()的调用,但我会简单地使用$your_array[] = 'some value';。 -
显示 tcpdf.php 第 22165 行您使用
array_push()的位置,以及您在array_push()中声明使用的数组的位置 -
您是否注意到 this note 关于 writeHTML:注意: 所有 HTML 属性必须用双引号括起来。
-
这看起来非常不安全。您确定您的用户参数是properly escaped 吗?
mysql_query是一个过时的接口,不应在新应用程序中使用,并将在 PHP 的未来版本中删除。像PDO is not hard to learn 这样的现代替代品。如果您是 PHP 新手,PHP The Right Way 之类的指南可以帮助您解释最佳实践。 -
您必须将您的 HTML 表格连接到一个字符串中。这就是这个类的工作方式。如果需要,我曾经设法自己连接这些字符串。而不是输出它,而是将它添加到您的字符串中。