PHP/MYSL : affichage enreg sur 2 colonnes
tonguim
-
tonguim -
tonguim -
Bonjour,
j'ai des articles dans ma table, et je voudrais en afficher 40 par page, dans 2 colonnes, à raison de 20 articles par colonne.
J'utilise PHP 4.3.3 et MySQL 4.0.15. Voici mon code ci-dessous, qui me présente l'erreur suivante:
Merci de m'aider
j'ai des articles dans ma table, et je voudrais en afficher 40 par page, dans 2 colonnes, à raison de 20 articles par colonne.
J'utilise PHP 4.3.3 et MySQL 4.0.15. Voici mon code ci-dessous, qui me présente l'erreur suivante:
Fatal error: Call to undefined function: gmp_mod() in c:\program files\autres\easyphp1-7\www\new_version\html\actualites\cq_de_presse\frarchives2.php on line 23
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
<title>Title here!</title>
</head>
<body>
<?php
$conn_mysql=mysql_connect("localhost", "root", "");
if($conn_mysql)
{
$conn_bd=mysql_select_db("sitewuo");
if($conn_bd)
{
$requete="select*from articles";
$resultat=mysql_query($requete);
?>
<table>
<?php
$debut_ligne='<tr><td height="92" width="17"></td>';
$nombre_articles=0;
while ($ligne = mysql_fetch_assoc($resultat) && ++$nombre_articles <= 40)//40 articles par page
{
if (gmp_mod($nombre_articles, "20")==1) //20 articles par colonnes
echo $debut_ligne;
?>
<td valign="top" align="center" width="102">
<?php echo $ligne['titre']; ?> <br><br> <?php echo $ligne['resume']; ?> </td>
<?php
if (gmp_mod(++$nombre_colonnes, "2")==2) echo "</tr>";
}//fin du while
?>
</table>
<?php
}
else //si echec de la connection a la base de donnees
die(mysql_error());
}
else //si echec de la connection au serveur mysql
die(mysql_error()); //<?php echo $_GET['numeroArticles']
?>
</body>
</html>
Merci de m'aider
2 réponses
-
Bah pour ce qui est de code,j'ai pô matter tout en détail car je pense que le message : "Fatal error: Call to undefined function: gmp_mod()"
est assez explicite : La fonction gmp_mod n'est pas défini, regarde si c'est pas a mettre en extension ou sinonessai p'tet un truc de ce genre :
<?php
if($a<0) //Si $a est négatif
{
$a=$a*(-1); //On le passe en positif
}
$res=$a%$b;
?>
-->revient au même que<--
<?php $res=gmp_mod($a, $b); ?>
Voilà,j'espère que ça te sera utile..
@+
Zep3k!GnO W3bSl@V3 -
Bonjour,
j'ai essayé ce que Zep3k!GnO m'a conseillé de faire et voici ci-dessous le code obtenu; lorsque j'exécute ce code, j'obtiens une page toute blanche dont j'arrive à afficher le code source (html bien sur) dans un navigateur. Où est l'erreur dans mon code s'il vous plaît?:
<!doctype html public "-//W3C//DTD HTML 4.0 //EN"> <html> <head> <title>Title here!</title> </head> <body> <form> <?php $conn_mysql=mysql_connect("localhost", "root", ""); if($conn_mysql) { $conn_bd=mysql_select_db("sitewuo"); if($conn_bd) { $requete="select titre, resume from articles order by date desc"; $resultat=mysql_query($requete); ?> <table> <?php $debut_ligne='<tr><td height="92" width="17"></td>'; $nombre_articles=0; $nombre_colonnes=0; while ($ligne=mysql_fetch_assoc($resultat) && ++$nombre_articles <= 40)//40 articles par page { //if (gmp_mod($nombre_articles, "20")==1) //20 articles par colonnes //*********** if($nombre_articles<0) //Si $a est négatif { $nombre_articles=$nombre_articles*(-1); } $res=$nombre_articles%20; //*********** if($res==1) echo $debut_ligne; ?> <td valign="top" align="center" width="102"> <?php echo $ligne['titre']; ?> <br><br> <?php echo $ligne['resume']; ?> </td> <?php //************** if($nombre_colonnes<0) { $nombre_colonnes=$nombre_colonnes*(-1); } $res2=$nombre_colonnes%20; //************** //if (gmp_mod(++$nombre_colonnes, "2")==2) echo "</tr>"; if($res2==2) echo "</tr>"; }//fin du while ?> </table> <?php } else //si echec de la connection a la base de donnees die(mysql_error()); } else //si echec de la connection au serveur mysql die(mysql_error()); //<?php echo $_GET['numeroArticles'] ?> </form> </body> </html>