insertion d'une pub tout les x enregistrements

Mammouth du PHP | 620 Messages

22 mai 2010, 23:15

bonjour,
je voudrai savoir si il est possible de faire afficher une pub ou autre tout les x enregistrements.
c'est a dire, sur une page actuellement je fait afficher toutes les données qui sont stockées dans ma base de données et je voudrai que tous les 5 affichages j'affiche une pub.

mon code de base sans pub est le suivant :
$requete = mysql_query("SELECT * FROM IWactualites ORDER BY id DESC"); 
		while( $result = mysql_fetch_array( $requete ) )
		{
		?>
		<?PHP echo $result['nom']. ' - '$result['actu']. '<br/>' ; ?> 
}
 

devlop78
Invité n'ayant pas de compte PHPfrance

23 mai 2010, 01:27

$requete = mysql_query("SELECT * FROM IWactualites ORDER BY id DESC");
$compteur = 0;
while( $result = mysql_fetch_array( $requete ) )
{
echo $result['nom']. ' - '$result['actu']. '<br/>' ;
if (++$compteur == 5) echo "Pub";
}

Quelque chose comme ça ...

Mammouth du PHP | 620 Messages

23 mai 2010, 09:44

oui merci j'avai fait un truc du genre mais en relisant ton bout de code je me suis rendu compte que je ne reinistialisai pas mon compteur au bout de 5 et que c'était pour ça que je n'ai qu'une seule pub.

j'ai fonc dans la condition if ajouté a la fin $compteur = 0; pour avoir réélement une pub tout les 5 actus

Grand merci.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 mai 2010, 11:06

Tu peux aussi utiliser l'opérateur modulo (%) pour ne pas avoir à réinitialiser ton compteur, et conserver une variable avec le nombre total d'enregistrements affichés en sortie de boucle :)
while( $result = mysql_fetch_assoc( $requete ) )
{
echo $result['nom']. ' - '$result['actu']. '<br/>' ;
if (++$compteur % 5 == 0) 
   echo "Pub";
}
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...