Jqgrid PHP - 使用行号列导出pdf

时间:2018-01-23 22:14:01

标签: php export-to-pdf jqgrid-php

您是否有任何选项可以在jqgrid PHP中导出序号列(“rownumbers”=> true)? 或者也许还有其他方法可以在导出时生成此列?

提前致谢

$grid->setPdfOptions(array(
    "page_orientation" => "L",
    "grid_row_height"=>10,
    "page_format"=>"A4",
    "shrink_cell"=>false,
    "reprint_grid_header"=>true, 
    "font_size_main"=>16,
    "font_size_data"=>7,
    "font_name_data"=>"freeserif", 
    "font_name_main"=>"freeserif",
    "font_monospaced"=>"freeserif",
    "header"=>true, 
    "margin_top"=>15, 
    "header_logo"=>"logo.gif",
    "header_logo_width"=>40, 
    "header_title"=>$_COOKIE['data'],
    "footer"=>true
));

1 个答案:

答案 0 :(得分:0)

在当前的实现中,没有构建方法。您可以在select语句中模拟行号,其中可以隐藏正常工作中的此字段以及执行​​导出以显示它时。

为了获得实用的解决方案,需要知道使用的数据库,如MySql,Postgree Sql或其他。

更新:如果是MySql,您可以尝试以下

// Connection to the server
$conn = new PDO(DB_DSN,DB_USER,DB_PASSWORD);
// Tell the db that we use utf-8
$conn->query("SET NAMES utf8");
// reset variable
$conn->query('SET @row_number = 0');
$grid = new jqGridRender($conn);
$grid-SelectCommand = "SELECT (@row_number:=@row_number + 1) AS num, field1, field2 FROM table";
...
$exportme = false;
if($grid->oper == 'pdf') {
    $exportme = true;
}

...
$grid->setColProperty("num", array("hidden"=>!$exportme));