Page 1 sur 1

Banniere aleatoire

Posté : 24 mars 2007, 21:12
par Arno76
Bonjour,

Je crée actuellement un script de banniere aleatoire mes j aimerai savoir comment procéder pour savoir si l'id de ma banniere tirée aleatoirement existe ou non ? pour ne pas afficher une banniere qui n'existe pas.

pouvez vous m aider merci. :D

Posté : 24 mars 2007, 21:23
par djeek9006
Tiens, j'utilise ces trois fichiers liés sur mon site et ca marche nickel!
En gros, dès que la page est chargée, ca incrémente de 1 et ca prend la bannière située en ligne 1, dès que la page est rechargée ca incrémente en 2, et donc bannière n°2 ... et dès que c'est au bout des bannières, ca reprend au début :

http://www.web-comparatifs.com/adrotate/adrotate.rar

C'est un sript que j'ai trouvé sur le net.

Posté : 24 mars 2007, 21:42
par Arno76
Merci de ton aide,

Il me faudrai quelque chose de plus performant a ce niveau c est pour ca que j utilise une bdd pour modifier stocket les banniere compter le nombre de cliques et d affichage....

j aimerai savoir comment procéder pour savoir si l'id de ma banniere tirée aleatoirement existe ou non dans ma bdd :D

Posté : 25 mars 2007, 03:59
par guilt92
Tu peux utiliser mysql_num_row() par exemple, c'est une fonction qui te permet de compter le nombre de réponse d'une requete...


Exemple:
$req=mysql_query("SELECT nom,blable FROM bannieres WHERE id=".$id);
if(mysql_num_row($req) {
//si il y a + que 0 résultat, alors on entre dans la boucle
//affichage de la banniere
}
else {
//sinon
}
Sinon tu peux peut etre récupérer tous les id existants de ta base de données, les mettre dans un tableau et choisir un indice aléatoire dans ce tableau, comme ca tu es sur que tu ne peux pas avoir une id qui n existe pas...

Posté : 25 mars 2007, 14:10
par Arno76
Merci de ta reponse :D

Peut tu me montrer comment je peut faire pour la deuxieme solution je te remerci ;)

Posté : 25 mars 2007, 15:13
par pjl
et pourquoi ne pas utiliser les fonctions aléatoires intégrées dans MySQL ?

Posté : 25 mars 2007, 15:43
par Arno76
Salut,

Peut tu m'explique ou me passe l url d un site web qui montre comment proceder pour que mysql tire au sort un id qui exite merci ;)

Posté : 25 mars 2007, 16:07
par guilt92
Il existe la fonction RAND() en sql sur laquelle tu trouveras des infos sur le net...
je n'avais pas pensé a cette solution qui est probablement la plus simple pour ton probleme mais avec laquelle je ne suis pas tres familier.

Il me semble que tu peux selectionner un résultat aléatoire avec une requete et un ORDER BY RAND().

Si tu ne veux qu un seul résultat retourné tu peux combiner avec l attribut LIMIT....

par exemple (je pense) que la requete suivante :

SELECT var1,var2 FROM table ORDER BY RAND() LIMIT 1;

devrait te retourner un résultat aléatoire... à confirmer !!

Posté : 25 mars 2007, 16:38
par Arno76
C'est bon j ai reussi merci a vous :D voici la reponse ;)
SELECT *FROM publiciter where active = 0 ORDER BY RAND() LIMIT 1