YADCF + Datatables服务器端填充选择与Php

我确实已经搜索了每一页提到了这个论点,但似乎无法解决这个问题,我正在使用Datatables和Yadcf,ajax source,server_side.php和ssp.class.php

现在我想用所有数据填充选择filter,而不仅仅是当前页面,我阅读并看到了yadcf展示– > yadcf-showcase.appspot.com/server_side_source.html唯一提到的是JQuery(java)部分填充yadcf_data_n

但是找不到一个例子来使用server_side.php和ssp.class.php来检索数据。

我(以及我在很多其他人身边看到的)对于如何存档这个有一个海盗的例子真的很棒

我的数据表代码是:

var oTable2; oTable2 = $('#example2').DataTable({ "responsive": true, "processing": true, select: true, "serverSide":true, stateSave: true, "ajax": { "type" : "GET", "url": "leadsdata.php", "data" : function ( d ) { d.var1=var1; } }, "columns": [{ "data":"test", "mRender": function ( client_id, type, full ) { return ' GO'; } },{ "data": 1 },{ "data": 2 },{ "data": 3 },{ "data": 4 },{ "data": 5 },{ "data": 6 }], "language": { "infoFiltered": ".", "info": "_START_ : _END_ nga _TOTAL_ nominativ" } }); yadcf.init(oTable2, [{ column_number: 1, filter_type: "text", filter_delay: 200 }, { column_number: 2, filter_type: "text", filter_delay: 200 }, { column_number: 3 }, { column_number: 4, filter_type: "text", filter_delay: 200 }, { column_number: 5 }, { column_number: 6 }]); }); 

并使用默认的server_side.php 点击此处显示

和默认的ssp.class.php 点击此处显示

欢迎使用任何示例代码如何从此设置填充yadcf_data_n#

对于对同一主题感兴趣的人

感谢vedmack(YADCF)作者的帮助,我找到了完美的解决方案:

修改部分:

  echo json_encode( SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns ) ); 

至:

 $data=SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns, $joinQuery, $extraWhere ); $db = SSP::sql_connect( $sql_details ); $stmt3 = $db->prepare( 'SELECT DISTINCT(value) FROM esito' ); $stmt3->execute(); $data['yadcf_data_3'] = $stmt3->fetchAll(PDO::FETCH_COLUMN, 0); $stmt5 = $db->prepare( 'SELECT DISTINCT(value2) FROM table' ); $stmt5->execute(); $data['yadcf_data_5'] = $stmt5->fetchAll(PDO::FETCH_COLUMN, 0); $stmt6 = $db->prepare( 'SELECT DISTINCT(value3) FROM table' ); $stmt6->execute(); $data['yadcf_data_6'] = $stmt6->fetchAll(PDO::FETCH_COLUMN, 0); echo json_encode($data); 

所以我们为我们拥有的每个选择字段进行自定义查询(在我的情况下我有3个)并重新包含$ db,因为我的ssp.class.php在不同的文件中

希望能帮助到你