如何在数据表中每次只显示十个结果?

时间:2013-06-14 22:44:12

标签: mysql pdo pagination datatables

我需要知道数据表如何不是一直显示所有结果。 现在,数据表脚本调用所有用户并显示在页面中,当显示所有用户时,它继续进行分页(每页10个)...我需要更改此表单,因为我在此表中有17,000个用户并且总是当我去users.php时页面冻结.....我需要知道我是否需要在jquery.dataTables.min.js或jquery.dataTables.js中更改某些内容? 或者我需要做出不同的电话来向用户展示?

我使用下一个代码来显示用户:

<? $sql = 'SELECT * FROM PACIENTES';
    $result = $conn->query($sql);
    while($row = $result->fetch(PDO::FETCH_ASSOC)) {
?>

祝你好运!

1 个答案:

答案 0 :(得分:1)

它不应该一次呈现17,000条记录,它应该使用iDisplayStart和iDisplayLength等变量的请求集合来确定您在查询中包含的LIMIT,它将从总数据集中呈现X行数,如果你从未设置idisplayLength,它应该传递10默认

我知道这不是PDO,但它应该是非常相似的语法

 /**
 * Paging
 */
$sLimit = "";
if ( isset( $input['iDisplayStart'] ) && $input['iDisplayLength'] != '-1' ) {
    $sLimit = " LIMIT ".intval( $input['iDisplayStart'] ).", ".intval( $input['iDisplayLength'] );
}

http://datatables.net/development/server-side/php_mysqli

如果你的查询中有这个LIMIT并且它仍然需要永远,你可能需要重构/优化你的sql语句,因为它不是DT问题