2010-04-05 82 views
6

我们正在使用jquery进行分页。我们从数据库中提取了数百万条记录,然后jquery在前端进行分页。这是一个非常缓慢的过程。有人可以告诉我们一个解决方案在php和jQuery中,我们一次拉50条记录吗? 谢谢jquery分页

+3

您使用了哪个数据库? – 2010-04-05 20:26:45

+1

你正在使用哪个jQuery表格插件? – webbiedave 2010-04-05 20:43:44

+3

荒谬。数百万条记录正在发送给客户?亲爱的g-d! – 2010-04-06 04:28:42

回答

3

是的,你应该AJAX使用的不是检索整个事情,试试这个:

$.get("path/to/page.php", { param1: "myParam1", page: "pagenumber" }, 
    function(data){ 
    $('#datacontainer').html(data); 
}); 

有关$.get功能的进一步信息,请阅读这个:http://api.jquery.com/jQuery.get/

1

我已经使用jqGrid为ASP.NET MVC应用程序,但他们做了一个PHP版本,应该很好用。

6

你真的需要/想要使用jquery的分页吗?

在PHP方面,您可以计算出行号(使用page_number-1 * number_of_rows_per_page),因此第1页将从第0行开始,第2页第50页。这样一次只能抓取50行。

然后,可以使用jQuery对表格进行样式设置,或者向脚本发送ajax请求以检索特定的行。

$page_number = $_GET['page']; //Could POST this if u want to keep your urls tidy 
$num_rows_per_page = 50; 
$start_row = ($page_number -1) * $num_rows_per_page; 

//This will get just the specified number of rows 
$sql = "SELECT * from mytable LIMIT $start_row, $num_rows_per_page"