Si votre requête ne renvoie pas un caractère prohibitif quantité de résultats, pensez à utiliser Jquery pour le mettre en page avec une fonction Tablesorter. Il faut un tableau HTML correctement formaté et des pages, des tris, etc. à la volée ... pas besoin de variables de requête supplémentaires si vous ne le souhaitez pas. C'est tellement plus facile que d'aller sur la route de pagination PHP à part entière, et c'est beaucoup plus rapide pour l'utilisateur.
Mon exemple personnel préféré est ici: http://datatables.net/
Il peut ne pas convenir parfaitement à vos besoins, mais il est cool pour de nombreuses applications. Si vous le faites, n'oubliez pas de formater votre table avec le thead et le tbody de façon à ce que les éléments de la table puissent être correctement ramassés.
double possible de [MySQL sans pagination double interrogation?] (Http://stackoverflow.com/questions/818567/mysql-pagination-without-double-querying) –