Image aléatoire + intervalle régulier + emplacement différent

[Fermé]
Signaler
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020
-
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020
-
Bonjour,

J'ai une idée d'évent pour mon en jeu ligne qui est de faire apparaitre des images (pas trop grande hein genre maxi 100*100) 1 par 1 et sur tous mon site n'importe qu'elle page au hasard et avec un delai d'affichage ainsi qu'un delai entre chaque affichage d'image.

Je m'explique un peu mieux :

je nomme :
- Page1.php
- Page2.php
- Page3.php

Je navigue sur mon site et par exemple une image (que je nomme, image.png) apparaît sur la page1.php. Quelques minutes (que je souhaite avoir le choix) plus tard l'image apparaît sur la Page3.php et quelques minutes plus tard elle apparaît sur la Page2.php. Sachant que je souhaite choisir le temps d'affichage aussi sur chaque page (identique à toutes les pages.)

Pouvez-vous m'aider car, je ne sais pas du tous comment m'y prendre.

Merci par avance.

1 réponse

Messages postés
33748
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 octobre 2021
3 773
Bonjour,

Je suppose que l'emplacement de l'image ( le choix de la page) sera le même pour tous les visiteurs à un instant T ...
Dans ce cas, Le javascript seul ne suffira pas.

Pour moi...
- Une crontab qui lance un script PHP toutes les x secondes
- Ce script choisi une image au hasard et choisi une page où l'afficher
(il enregistre ce "tirage'" dans une BDD ainsi que la date/heure du tirage )

- Bien entendu.. je vérifie au préalable si la "durée" d'affichage de la précédente est dépassée ou non avant de stocker la nouvelle valeur ( grâce à la date/heure du tirage.. )

- Côté site :
Lorsque tu affiches une page de ton site,
- Tu va vérifier en BDD si c'est celle où l'image doit s'afficher
- Si oui.. tu récupères le nom de l'image à afficher
- Un script JS la place ( au hasard ? ) sur ta page
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020

si je prend ça comme script js :

<script>
var img = new Image ();  
var div = document . getElementById ( 'x' );
 
 
img . onload = function () {  
 
  div . innerHTML + = '<img src = "' + img . src + '" />' ;  
 
};
 
 
img . src = 'Jeu/mages/pokemon/1.png' ; 
</script>


Je met quoi pour afficher l'image que je souhaite ? et pour l'afficher à un endroit mais qu'il ne soit pas caché sur la page ?
Messages postés
33748
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 octobre 2021
3 773 >
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020

ben.. l'image se placera dans l'élément html qui a pour id "x" tel qu'écrit dans le code....
Donc si tu as défini l'emplacement "a la main" dans ton code.. c'est là qu'il se mettra.

Si tu veux faire de l'aléatoire... il faut modifier la position top/left de l'élément "x"
Et bien entendu.. en javascript tu peux générer de nombre en random
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020

donc pour afficher l'image je peux faire <div id='x'></div> ?
et pour l'aléatoire, tu as un tuto pour que je puisse voir comment faire s'il te plait ?
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020

En essayant ça :

<div id="event_noel"></div>
<script>
function event_noel()
{
var x=document.getElementById("event_noel")
x.innerHTML="<img src=\"/images/avatars/"+Math.floor((Math.random()*358)+1)+".png\" width=\"100\" height=\"100\" />"
}
bienvenue();
</script>

j'ai rien qui ne s'affiche comment on peux faire, a partir de ce code, ci-possible, pour l'afficher en tout premier plan et l'afficher car, là, elle ne s'affiche pas.
Et autrement, on peux mettre une variable php dans un code javascript si je ne m'abuse ?
Messages postés
72
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
3 mai 2020

c'est bon j'ai réussi à afficher l'images et elle est aléatoire à chaque rechargement.
donc me reste à faire la modif pour mettre l'image cliquable et arriver sur une autre page.
Merci beaucoup pour ton aide. voici mon code :
<div id="event_noel"></div>
<script>
function event_noel()
{
var x=document.getElementById("event_noel")
x.innerHTML="<img src=\"/images/avatars/"+Math.floor((Math.random()*358)+1)+".png\" width=\"100\" height=\"100\" />"
}
event_noel();
</script>


Comment faire à partir de bout de code fonctionnel pour afficher l'image un peu n'importe où sur la page ?