Salut je repond a ce poste car je vient a peine (il y a quelque jour de faire ca)
donc vu que je passe par là , ben je donne ma petite contribution en éspérent pouvoir aidé au mieux
je previent, la chose peut trés surement etre optimisé , pour ma part l'optimisation serat faite plus tard car la j'ai pas trop le tmp (et l'envi ) de mis pencher.
donc je le pose comme ça sans trop d'explication, mais je pense que ca devrait y allez...
le code est tirée d'une de mes pages donc a adapté celon l'utilisation
<?
if (isset($_GET['page']))
$page = $_GET['page'];
else
$page=0;
//Pour c'est deux variable il faut les crée en global, session ou autre ou les passé en param ds la fonction javascript, a faire surtout si l'utilisateur peut changer le nbre de ligne/page a affiché
//$Limit_Nbre=//nbre de ligne par page
//$Limit_Debut=//la 1ere ligne a afficher ds le tableau soit 1ere page = 1ere ligne, 2eme page = 2* $Limit_Nbre etc.....
//Pour la var page il faut la considaire comme un tableau l'indice de la 1ere page est 0
//au depart la gestion de la requete s'effectue en deux fois
//la 1ere requete pour recupe le nbre de resulat
$result = mysql_query($query) or die($_POST['Erreur']="Requette non effectue");
if ($_POST['Erreur'] !="") return;
$nb_result=mysql_num_rows($result);
if($Limit_Debut==""){$Limit_Debut=0;}
if($page==""){$page=0;}
$Limit_Debut=$page*$Limit_Nbre;
//puis la 2eme cree la requete avec les limites d'affichage
$result=mysql_query($query." LIMIT $Limit_Debut,$Limit_Nbre");
//Votre code de creation de tableau par exemple
//$i=//nbre de colone contenu ds le tableau, si integration a la fin d'un affichage de tableau (compris entre <table> et </table>)
//$Table= //variable contenant tout le tableau (ou la page en faite...)
$Table .='<tr><td colspan="'.$i.'"></td><tr><tr><td colspan="'.$i.'"></td><tr>
<tr><td colspan="'.$i.'" align="center">';
if ($page>0)
$Table .= '<a style="cursor:pointer" class="Normal" onclick="wActualiser('.($page-1).')">Page Précédente <a>';
$nbre_page = ($nb_result/$Limit_Nbre);
//------determine les extremités (par 10 pages)
$j=floor($page/10)*10;
if ($j+10 <=$nbre_page)
$grp_page=$j+10;
else
$grp_page=$nbre_page;
//groupe -1
if ($j-1>0)
$Table .='<a style="cursor:pointer" class="Normal" onclick="wActualiser('.($j-1).')"> ... <a>';
//creation de la liste des pages
while ($j < $grp_page)//
{
if ($page == $j)
$Table .= '<a style="cursor:pointer" class="Normal" onclick="wActualiser('.($j).')"> <u>'.($j+1).'</u> <a>';
else
$Table .='<a style="cursor:pointer" class="Normal" onclick="wActualiser('.($j).')"> '.($j+1).' <a>';
$j++;
}
//groupe +1
if ($grp_page<$nbre_page)
$Table .='<a style="cursor:pointer" class="Normal" onclick="wActualiser('.($grp_page).')"> ... <a>';
//------------
if ($nbre_page > ($page+1))
$Table .= '<a style="cursor:pointer" class="Normal" onclick="wActualiser('.($page+1).')"> Page Suivante<a>';
$Table .= '</td></tr>';
?>
Puis pour la fonction javascript
function wActualiser(page)
{
window.open("<Nom de la page>"?page="+page+,<Destination,frame ou page etc...>);
}
voila en esperant que tu comprenne qq chose... j'ai pas le tmp et l'envi comme dit plus pour optimisé ou expliqué la chose , mias si qq chose te géne n'ésite pas a le faire savoir, j'essairais de donnée plus d'explication.