[Php]image aleatoire

alban13580 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -  
 Anaya -
bonjour voila j'ai plusieurs images et jaimerais en php que ce ne soit pas tout le temps la meme qui soit afficher que ce soit un ordre aléatoire.

Merci
A voir également:

12 réponses

kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Imagine que tu as trois adresses pour trois images:

http://www.tonsite.com/image1.jpg
http://www.tonsite.com/image2.jpg
http://www.tonsite.com/image3.jpg

Donc tu affectes ces trois valeurs dans trois champs d'une variable tableau:
$images[0]="http://www.tonsite.com/image1.jpg";
$images[1]="http://www.tonsite.com/image2.jpg";
$images[2]="http://www.tonsite.com/image3.jpg";


Tu génères un nombre aléatoire entre 0 et 2 (inclus) et tu l'affectes à une variable $i:
$i=rand(0,2);

Ce nombre aléatoire te servira pour faire appel à un des trois champs du tableau $image,; avec ça tu peux construire un appel d'image en html:
echo "<img src=\"$images[$i]\">

Dis moi si ya un truc qui t'échappe.


Dugenou
3
marco13
 
bonjour,
ça marche pareil avec des codes html de utube? on peut les faire tourner en aléatoire?

merci
0
graffx Messages postés 6506 Date d'inscription   Statut Contributeur Dernière intervention   1 975
 
Sinon tu peux simplement utiliser un array, simple et imparable:

<img src="
<?php $bckImg=array(

'images/header/bg.jpg',
'images/header/bg_hl2.jpg',
'images/header/bg_alien.jpg',
'images/header/bg_alien2.jpg',
'images/header/bg_zombie.jpg',
'images/header/bg_hl24.jpg',
'images/header/bg_hl25.jpg'

);

Ce qui affichera une image aléatoire

Le petit bonhomme en mousseeuuuuuuu...
3
Anaya
 
Ton code ne fonctionne pas, peux-tu me donner la bonne version ?
0
dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   1 452
 
Bonjour,

En fait le script est lié à un fichier texte qui contient les adresses des images ou de ce que tu veux.

Il faut insérer le script à l'endroit ou tu veux que les images s'affichent, puis écrire les adresses des images dans le fichier texte.

J'utilise ce script aussi bien pour des bannières en flash que pour des citations. La seul obligation est que chaque adresse dans le fichier texte ne tienne que sur une ligne.

Le script :

<?
$cpt=0;
$fpc = fopen("fichier.txt","r");

while (!feof($fpc))
{
$enrc = fgets ($fpc,4096);
$tabc[]=$enrc;
$cpt++;
}
srand((double)microtime()*1000000);
$nbrc=rand(0,($cpt-1));
echo "$tabc[$nbrc]";
?>

Bon courage.
1
Mono
 
Et est-ce que quelqu'un sait sous quelle forme (syntaxe) on doit écrire les adresses des images dans le fichier txt ?
Merci d'avance.
0
Kosty
 
Bonjour, voila j'ai un petit code de bannière aléatoire qui marche parfaitement :

<?php $nbimages=5;

$nomimages[1]="../images/Design/bannieres/Banniere-1.jpg";
$nomimages[2]="../images/Design/bannieres/Banniere-2.swf";
$nomimages[3]="../images/Design/bannieres/Banniere-3.jpg";
$nomimages[4]="../images/Design/bannieres/Banniere-4.swf";
$nomimages[5]="../images/Design/bannieres/Banniere-5.jpg";
srand((double)microtime()*1000000);
$affimage=rand(0,$nbimages);
?>

<img src="images/<?echo $nomimages[$affimage];?>" border=0 width=50 height=50 alt="Veuillez patienter le temps que l'image s'affiche...">

Comment pourrai-je faire pour y mettre une image .swf (flash) ?
merci d'avance.
1
v-v
 
merci pour ton script,il marche trés bien !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Euh en fait je voulais parler de rand() je crois:
http://fr2.php.net/manual/en/function.rand.php

Parce que là j'ai pas tout compris à gmp_random()

Donc:

$i=rand(0,9);
echo "<img src=\"$images[$i]\">";
0
alban13580 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention  
 
ok sa va a peu pres
je peux remplacer l'adresse de l'image par du code xhtml?? si je veu faire une banniere lien??
merci
0
roopys
 
Etant donné que les balises pour appeler du Flash, et celles pour une img sont différentes, il faudra peut être couper ton script en 2 parties.

Je vois pas ça possible avec le même code.
0
Gaby
 
Voila

je pense que ca va etre dure pour moi car je ne comprend absolument rien !!!!
pour moi cas j ai une image sur mon site qui est dans mon fichier CSS.

.gauche {float : left; width : 265px ; height : 450px; background-image : url(images/001.jpg) }

l"image s apel 001.jpg

voila je voudrais afficher des images aleatoirement

http://www.optycos.fr

l"adresse de mon site

merci de venir en aide au boulet que je suis

Merci
0
makrem
 
et si je veux faire un lien sur cette image ??
0
dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   1 452
 
Bonsoir,

Tu peux utiliser ce script en php, sans base de données, "bannière aléatoire" :

http://www.phpscripts-fr.net/scripts/scripts.php?cat=Banni%E8res

Bon courage.
-1
kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Salut,

Il suffirait de prendre un tableau, par exemple $images.
Dans $images[0] tu mets l'adresse de ta première image, dans $images[1] l'adresse de ta deuxième image etc..
On va dire que tu as 10 images. Donc on s'arrête à $images[9]

Tu utilises la fonction gmp_random()
http://fr2.php.net/manual/en/function.gmp-random.php

Et voilà,
$i=gmp_random(9);
echo "<img src=\"$images[$i]\">";
:-)
-1
alban13580 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention  
 
merci pour le script dugenou
heu kilian j'ai pas compris ce que tu voulais dire....
-1