2010-04-05 50 views
6

Estamos usando jquery para la paginación. Estamos sacando millones de registros de la base de datos y luego jquery hace la paginación en el frente. ese es un proceso muy lento. ¿Puede alguien recomendarnos una solución en php y jquery donde extraemos 50 registros a la vez? Graciasjquery pagination

+3

¿Qué base de datos está usted utilizando? –

+1

¿Qué plugin de tabla jQuery estás usando? – webbiedave

+3

Ridículo. ¿Millones de registros enviados al cliente? ¡Querido Dios! –

Respuesta

3

Sí, usted debe usar Ajax en lugar de recuperar todo el asunto, intente esto:

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

Para más información sobre la función $.get leyeron: http://api.jquery.com/jQuery.get/

1

He usado jqGrid para una aplicación ASP.NET MVC pero hacen una versión de php que debería ser buena para usar.

6

¿Realmente necesita/desea utilizar jquery para la paginación?

En el lado php puede calcular el número de fila desde el que comenzar (usando page_number-1 * number_of_rows_per_page) así que la página 1 comenzará en la fila 0, página 2 en 50. De esa manera solo obtendrá 50 filas a la vez .

jQuery se puede usar para dar estilo a la tabla o enviar una solicitud ajax al script para recuperar las filas específicas.

$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" 
Cuestiones relacionadas