使用多个表进行列过滤的数据表服务器端处理

时间:2013-04-25 11:19:23

标签: php datatables jquery-datatables

我正在使用Datatables从两个表中提取记录来显示记录集。

表A

sno      | item_id | start_date | end_date   | created_on |
===========================================================
10523563 | 2       | 2013-10-24 | 2013-10-27 | 2013-01-22 |
10535677 | 25      | 2013-11-18 | 2013-11-29 | 2013-01-22 |
10587723 | 11      | 2013-05-04 | 2013-05-24 | 2013-01-22 |
10598734 | 5       | 2013-06-14 | 2013-06-22 | 2013-01-22 |

表B

id       | item_name                |
=====================================
2        | Timesheet testing        |
25       | Vigour                   |
11       | Fabwash                  |
5        | Cruise                   |

既然返回的记录数量将在不久的将来变成一个大数字,我希望在服务器端完成处理。我已经成功地实现了这一目标,但这需要付出代价。我在处理过滤器时遇到了问题。

datables

从上图中,(1)是其值将在intitem_id)中的列,但在mysql资源的while循环内使用了一些小的修改,我正在使用string显示相应的Table B

现在,如果我使用过滤器(2),它工作正常,因为这些值来自Table A

问题

当我尝试从字段(3)进行过滤时,如果我输入string值,例如fab,则表示未找到记录。但是,如果我输入int,例如11,我会得到一行,其中包含Fabwash作为项目名称。

因此,在过滤时,我需要使用Table A中使用的直接值,而不是string中存储的相应Table B值。我希望我所提出的观点是可以理解的,因为很难用文字解释它。

我对如何解决这个问题毫无头绪。

0 个答案:

没有答案