Je voudrais réaliser un script en php qui affiche tous les enregistrements de ma base de données (10 enregistrements par page, en 2 colonnes: donc 5 enregistrements par colonnes); de plus je voudrais paginer toutes les pages que j'obtiendrais, de cette manière: 1, 2, 3, .... (1, 2, 3, ... étant des nombres hyperactifs; cela signifie qu'en cliquant sur "1", je vais sur la première page; sur "2" sur la 2e page etc.)
Mon code que voici, ne m'affiche rien du tout: juste le titre de la page avec les numéros hyperactifs 1, 2, 3 ... Il n'ya aucune erreur php; les noms des champs de la table, et le nom de la table sont bien justes. A mon avis, le problème se situe problablement au niveau des boucles (while et for). Pouvez vous m'aider à détecter ce qui ne va dans mon code? Merci
CODE
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
<title>Title here!</title>
</head>
<body>
<table>
<tr>
<td colspan="2"><h2><center>Actualités</center></h2>
</td>
</tr>
<tr>
<td>
<?php
include("connexion.php");
$requete=mysql_query("select * from articles order by date desc"); //query
$nombreLignes=mysql_num_rows($requete); //nombre d'enregistrements total de la bd
$nombreArticlePage=10; //nombre d'article par column
$nombrePg=ceil($nombreLignes/$nombreArticlePage); //nombre total de pages qui seront affichées
$numPgUrl=@$_GET["num"]; //numero de la page dans l'url
$numPgCour=0;
$col1=0; //premiere colonne du tableau html
$col2=0; //deuxième colonne du tableau html
while($numPgCour < $numPgUrl)
{
for($i = 1; $i<=$nombreArticlePage/2; $i++)
{
mysql_fetch_array($requete);
}
$numPgCour++;
}
for($i = 1; $i<=$nombreArticlePage/2; $i++)
{
if ($col1=mysql_fetch_array($requete) == 0) break;
if ($col2=mysql_fetch_array($requete) == 0) break;
echo "<tr><td><b>" .$col1['titre']. "</b></td><td><b>".$col2['titre']."</b></td></tr>
<tr><td>" .$col1['resume']. "</td><td>" .$col2['resume']. "</td></tr>";
}
?>Page<?
for($i = 1; $i<=$nombrePg; $i++)
{
if($numPgUrl == $i)
{
echo $i;
}
else
{ ?>
<a href="?num=<? echo $i ?>"
> <? echo $i; ?> </a>
<? }
}
?>
</table>
</body>
</html>
<html>
<head>
<title>Title here!</title>
</head>
<body>
<table>
<tr>
<td colspan="2"><h2><center>Actualités</center></h2>
</td>
</tr>
<tr>
<td>
<?php
include("connexion.php");
$requete=mysql_query("select * from articles order by date desc"); //query
$nombreLignes=mysql_num_rows($requete); //nombre d'enregistrements total de la bd
$nombreArticlePage=10; //nombre d'article par column
$nombrePg=ceil($nombreLignes/$nombreArticlePage); //nombre total de pages qui seront affichées
$numPgUrl=@$_GET["num"]; //numero de la page dans l'url
$numPgCour=0;
$col1=0; //premiere colonne du tableau html
$col2=0; //deuxième colonne du tableau html
while($numPgCour < $numPgUrl)
{
for($i = 1; $i<=$nombreArticlePage/2; $i++)
{
mysql_fetch_array($requete);
}
$numPgCour++;
}
for($i = 1; $i<=$nombreArticlePage/2; $i++)
{
if ($col1=mysql_fetch_array($requete) == 0) break;
if ($col2=mysql_fetch_array($requete) == 0) break;
echo "<tr><td><b>" .$col1['titre']. "</b></td><td><b>".$col2['titre']."</b></td></tr>
<tr><td>" .$col1['resume']. "</td><td>" .$col2['resume']. "</td></tr>";
}
?>Page<?
for($i = 1; $i<=$nombrePg; $i++)
{
if($numPgUrl == $i)
{
echo $i;
}
else
{ ?>
<a href="?num=<? echo $i ?>"
> <? echo $i; ?> </a>
<? }
}
?>
</table>
</body>
</html>