簡體   English   中英

通過使用jquery datatables進行ajax調用從mysql表中檢索數據

[英]Retrieve data from a mysql table by making ajax call using jquery datatables

從mysql表進行ajax調用檢索數據時出現問題。 我正在使用jquery數據表來顯示數據。 代碼如下

var oTable;

/* Formating function for row details */
function fnFormatDetails ( nTr )
{
var aData = oTable.fnGetData( nTr );
var sOut = '<table cellpadding="5" cellspacing="0" border="0" style="padding-left:50px;">';
sOut += '<tr><td>'+aData[0]+'</td></tr>';
sOut += '</table>';

return sOut;
}

$(document).ready(function() {
oTable = $('#datatables').dataTable( {
    "bProcessing": true,
    "bServerSide": true,
    "sAjaxSource": "../getproducts.php",
    "aData" : "POST","getproducts.php?c_name_mfac="+c_name_mfac
    "aoColumns": [
        { "sClass": "center", "bSortable": false },
        null,
        { "sClass": "center" },
    ]
} );

$('#datatables tbody tr td img').live( 'click', function () {
    var nTr = this.parentNode.parentNode;
    if ( this.src.match('details_close') )
    {
        /* This row is already open - close it */
        this.src = "../images/details_open.png";
        oTable.fnClose( nTr );
    }
    else
    {
        /* Open this row */
        this.src = "../images/details_close.png";
        oTable.fnOpen( nTr, fnFormatDetails(nTr), 'details' );
    }
} );
} );

代碼的HTML部分如下:

<div>                          
<table id = "datatables" class="display">
<thead>
<tr>
    <th></th>
    <th>Company Name</th>
</tr>
<thead>
<tbody>
    <?while($row=mysql_fetch_array($result)){               
            <tr>
                <td><img src="images/details_open.png"/></td>
        <td class="center" value="c_name_mfac"><?= $row['c_name_mfac']?></td>
    </tr>
    <?}}?>
</tbody>
</table>
</div>  

對文件getproducts.php進行AJAX調用,代碼如下所示:

<?php
   include('config.php');
   $cname = $_POST['c_name_mfac'];

   $sql = mysql_query("SELECT * FROM items where c_name_mfac = $cname ");

?>

我沒有得到任何語法錯誤,但也沒有得到輸出。

我是AJAX和JQUERY的初學者。 基本上,我需要的是基於公司名稱的,我需要在jquery數據表中顯示其所有產品。 我正在使用DataTables隱藏行詳細信息示例,但是此功能似乎對我有用。任何人都可以幫忙。

謝謝,NC

PHP文件未返回任何值,您應該生成一些JSON輸出,如下所示:

<?php
   include('config.php');
   $cname = $_POST['c_name_mfac'];

   $sql = mysql_query("SELECT * FROM items where c_name_mfac = $cname ");}

   $result = new stdObject;
   $result->aaData = array();

   while($row = mysql_fetch_assoc($sql)) {
       array_push($result->aaData, $row);
   }

   header('Cache-Control: no-cache, must-revalidate');
   header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
   header('Content-type: application/json');

   echo json_encode($result);
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM