Jquery数据表 - 无法使用PHP访问服务器端自定义参数,fnServerParams,POST方法

时间:2014-12-20 05:44:03

标签: php jquery post datatables server-side

http://legacy.datatables.net/usage/server-side< ---参考页

嘿所有,

我一直在使用数据库编写一些服务器端脚本并取得了巨大成功。现在,我试图让fnServerParams方法向PHP发送内容。

$(document).ready(function() {
  var my_inventory = $('#my_inventory').dataTable({
    "iDisplayLength": 10,
    "bprocessing": true,
    "bServerSide": true,
    "sAjaxSource": "scripts/my_inventory.php",
    "sServerMethod": "POST",

    "fnServerParams": function(aoData) {
      var character = $('#my_inventory_character').val();
      console.log(character);
      aoData.push({
        "name": "more_data",
        "character": character
      });
    }
  })
);  

我的角色变量很好用。该脚本可以很好地加载数据和客户端属性。它没有看到自定义属性。

通常我通过PHP访问以下列表中发送的客户端数据属性 - 使用$ _POST [' variablenamehere']。

" dl.dropboxusercontent.com/u/44445906/capture/variables.PNG" (不能连接两次以上)

但是,当使用上述方法时 - 我无法访问$ _POST ['字符']或$ _POST [' name']。事实上,空/ null。

https://dl.dropboxusercontent.com/u/44445906/capture/sever.PNG

TLDR:

尝试使用POST和PHP访问自定义参数。只能使用此方法访问标准变量。你是怎么解决这个的?

不使用POST,同样的事情发生在使用$ _GET [' variablename'] - 标准可用..自定义不。

1 个答案:

答案 0 :(得分:1)

对于遇到此问题的人。您可以通过确保使用数据表1.10或更高版本来访问变量,然后使用$ _GET [' more_data']在上面的示例中使用PHP。

'名称' datatables中的属性,指定发送到服务器端的变量的实际名称。

你没有发送带有"名称"和#34; more_data"的价值。在上面,你发送了一个名为" more_data"具有'字符'的值。您要发送的每个新变量都需要另一个名为' name'和'价值'属性。