通过数据表ajaxsource发送变量
sending a variable through a datatable ajaxsource
Javascript,我正在尝试使用fnserverparams,但我可能做得不对。
$(document).ready(function () {
$('#dblist').on('change', function () {
var selected = $("select option:selected").text();
tablefill(selected);
});
$('#search').click(function () {
var selected = $("select option:selected").text();
tablefill(selected);
});
function tablefill(selected) {
$('#table_id').dataTable({
"sAjaxSource": '/php/connect/searchtablequery.php',
"bProcessing": true,
//"bServerSide": true,
"bDestroy": true,
"sAjaxDataProp": "",
"fnServerParams": function (aoData) {
aoData.push({ "db": selected });
},
"aoColumns": [
{ "mData": "calldate" },
{ "mData": "clid" },
{ "mData": "src" },
{ "mData": "dst" },
{ "mData": "dcontext"}],
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"sDom": '<"H"Tfr>t<"F"ip>',
"oTableTools": {
"sSwfPath": "/DataTables/extras/TableTools/media/swf/copy_csv_xls_pdf.swf",
"aButtons": [
"copy", "csv", "xls", "pdf",
{
"sExtends": "collection",
"sButtonText": "Save",
"aButtons": ["csv", "xls", "pdf"]
}
]
}
});
};
});
php我用来获取变量
<?php
session_start();
include '../connect/adminconnect.php';
$myuserdb = $_POST['db'];
$dbidsql = $dbh->prepare("SELECT * FROM DBList WHERE DBNick= :db");
$dbidsql->execute(array(':db' => $myuserdb));;
$userdbid = $dbidsql->fetchAll();
$dbip = $userdbid['DBIP'];
$dbuser = $userdbid['DBUser'];
$dbpass = $userdbid['DBPass'];
$dbname = $userdbid['DBName'];
$remotetblname="crd"; // Table name
// Connect to server and select databse.
try {
$remotedbh = new PDO("mysql:host=$dbip;dbname=$dbname", "$dbuser", "$dbpass");
}
catch(PDOException $e) {
echo $e->getMessage();
}
$query = 'SELECT * FROM cdr';
$sql = $remotedbh->prepare($query);
$sql->execute();
$dblist = $sql->fetchAll(PDO::FETCH_ASSOC);
if($sql->rowCount() > 0){
header('Content-type: application/json');
echo json_encode($dblist);
}
else {
echo 0;
}
?>
我有json和所有的东西,我只希望用户能够从下拉列表中选择要查询的数据库,这是有效的,但我不知道如何传递变量,因为所有的dbip和所有的都是空的。
据我所知,数据表检索数据的默认方法是GET
,但您在$_POST
变量中查找db
。
此外,请确保使用1.8.2或更新版本的数据表,因为该版本引入了fnServerParams
,请参阅http://www.datatables.net/forums/discussion/6600/question-about-fnserverparams
相关文章:
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- 将PHP变量传递给jQuery时遇到问题
- 如何通过ajax刷新JSF填充的javascript变量
- 参数变量出现ngTable指令问题
- 通过javascript重定向html传递php变量
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 全局变量和全局对象的属性之间有什么区别吗
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 值对象在某个变量发生更改后发生更改
- Javascript变量赋值|
- AngularJS-在JSON选择器中使用变量名
- Javascript计数器变量未显示正确的值
- delete关键字在全局变量上的不同行为
- 如何在php变量中嵌入JQuery代码
- ReactJS映射:如何仅在url变量不为空时呈现html链接
- 在javascript函数中设置全局变量
- Jquery更改ajaxSource变量
- 通过数据表ajaxsource发送变量