Datatables - Json输出 - PostgreSQL - 返回null

时间:2011-05-02 16:18:46

标签: php json postgresql null datatables

我使用数据表。我将它与Postgresql服务器结合使用。 我想从Postgresql服务器获取数据。 我使用在http://datatables.net/development/server-side/php_postgres

上找到的脚本

该脚本工作并创建json文件。问题是json文件上的值为null。

这就是它的回报:

{"sEcho":1, "iTotalRecords":4, "iTotalDisplayRecords":4, "aaData":[[null,null,null], [null,null,null], [null,null,null], [null,null,null]]}

另外我不理解的是变量$sIndexColumn(索引列(用于快速和准确的表基数))。我已将其值设置为表格的第一列,例如$sIndexColumn = "'Name'";。这是正确的用途吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

文档说:

  

要在您自己的服务器上使用该代码,只需更改 $ aColumns 数组,以列出您希望从数据库中包含的列,设置 $ sIndexColumn 到索引(对于速度) $ sTable 到表名的列,最后将数据库连接参数填入 $ gaSql

强调我的。因此,$sIndexColumn应该是列名,而不是带引号的字符串。试试这个:

$sIndexColumn = "Name";

单引号用于PostgreSQL中的字符串(以及大多数其他SQL版本)。

我猜你用$aColumns引用了相同的引用问题,即你做了类似的事情:

$aColumns = array("'One'", "'Two'", "'Three'");

当你应该做这样的事情时:

$aColumns = array("One", "Two", "Three");

你输了三列,但这些列中没有任何内容,这些列值来自这里:

$row[] = $aRow[ $aColumns[$i] ];

因此,如果$aColumns错误,那么您将获得您所看到的null