Recharger page envois image

Résolu
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   -  
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   -
hello les gens,

Sur mon site j'ai un diaporama.php avec une partie admin.php qui me permet de mettre des images.

Je cherche un moyen de recharger la page du diaporama.php quand j'ajoute une nouvelle image.
Je ne vois pas comment faire cette opération!

Je voulais faire un cron, en comparant le nombre d'image en base, et le nombre d'image au chargement du diaporama, mais il n'est pas possible de charger une page de cette façon.
Y'a aussi le sleep, mais ce n'est qu'une pause !
Peut être avec l'heure du pc, toutes les 5 minutes je recharge la page, mais un rafraîchissement toutes les 5 minutes c'est plus que chiant, donc, pas une bonne solution.

Dans la doc php j'ai trouvé ceci:

// Crée et lance un minuteur qui se lance après 2 secondes, et se répète toutes les secondes
// tant qu'on ne le stoppe pas manuellement
$w2 = new EvTimer(2, 1, function ($w) {
    echo "est appelé chaque seconde, et est lancé après 2 secondes\n";
    echo "itération = ", Ev::iteration(), PHP_EOL;

    // Stoppe le watcher après 5 itérations
    Ev::iteration() == 5 and $w->stop();
    // Stoppe le watcher si les prochains appels provoquent plus de 10 itérations
    Ev::iteration() >= 10 and $w->stop();
});

mais je n'ai pas compris le principe de fonctionnement !

Une petite aide serais la bienvenue :)
Merci



A voir également:

3 réponses

blackduck Messages postés 817 Date d'inscription   Statut Membre Dernière intervention   96
 
Salut,

Sinon tu peux éventuellement bidouiller quelque chose avec AJAX.
Si tu mets une fonction qui tourne disons toutes les 5 minutes et qui ne fais que vérifier la différence entre le nombre d'image en base de données et celui chargé, tant que c'est identique rien ne se passe, pas de rechargement de page, par contre si différence il y a alors il lance le rechargement de la page.
De cette manière tu n'auras pas de rechargement toutes les 5 minutes qui ne servent à rien..
2
Danelectro Messages postés 1737 Date d'inscription   Statut Membre Dernière intervention   371
 
+1 pour l'AJAX, c'est également ce que je ferais.
0
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   1 641
 
merci à vous,
Mais ajax m'est inconnu !
Peut être avez vous un exemple que je décortique et le mette à ma sauce :)
0
Danelectro Messages postés 1737 Date d'inscription   Statut Membre Dernière intervention   371 > astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention  
 
Je m'y suis mis il y a peu. Je te conseille d'aller voir du côté du JQuery, qui propose des fonctions qui facilitent la vie pour faire de l'AJAX : $.ajax(), $.get(), ...
0
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   1 641
 
:-)
c'est bon j'ai réussi en jquery ou ajax aucune idée :D
ça ressemble à ça:

<script language="JavaScript" type="text/[/contents/577-javascript-introduction-au-langage-javascript javascript]">
var appel = function() {
       $.ajax({
       type : 'GET',
    [/contents/542-url url]: "nbr_lignes.[/contents/1351-php-introduction php]?nbr_lignes_diap="+<?php echo $nbr_lignes_img ; ?>, 
success: function(data){ 
  if(data==1) 
  { 
  window.location.reload(true);
  } 
      }

    });
};
var duree = 5000; 
setInterval(appel, duree);
</script>


sur ma page nbr_lignes.php j'affiche soit 1 soir 0

Maintenant je me demande si un compteur toutes les 60 secondes ne fait pas ramer le serveur ?
normalement nom vu que le js et coté navigateur.
0
Danelectro Messages postés 1737 Date d'inscription   Statut Membre Dernière intervention   371
 
C'est du JQuery ;) En fait l'AJAX n'est pas un langage mais un ensemble de méthodes existantes qui, reliées entre elles, permettent de manipuler des données de cette façon.
C'est côté client oui donc une requete au serveur toutes les 60 sec c'est rien du tout.
0
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   1 641
 
merci de l'info
Je suis bien content que ça fonctionne en tout cas :)
0