Afficher une image à un temps donné

dany
Invité n'ayant pas de compte PHPfrance

05 nov. 2006, 17:38

est il possible d'afficher une image à la minute pret, en fonction de l'heure du serveur ?

comme peut le faire le site "humanclock.com"

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

05 nov. 2006, 17:44

Avec la fonction date() tu peux connaitre la date et l'heure du serveur et donc afficher ce que tu veux en fonction.. Si nécessaire, avec un meta refresh tu lances l'actualisation de cette page toutes les x secondes :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

dany
Invité n'ayant pas de compte PHPfrance

05 nov. 2006, 17:46

j'ais deja ca :
<?
header("Content-type: image/gif");

$heure = date("H");
if($heure < 8)
     $image = "nuit.gif";
elseif($heure >= 11 && $heure < 12)
     $image = "11.gif";
elseif($heure >= 12 && $heure < 12)
     $image = "12.gif";
elseif($heure >= 12 && $heure < 13)
     $image = "123.gif";
elseif($heure >= 13 && $heure < 14)
     $image = "13.gif";
elseif($heure >= 14 && $heure < 18)
     $image = "pm.gif";
elseif($heure >= 18)
     $image = "soir.gif";

readfile($image);
?>
mais je voudrais avoir l'image qui change en fonction des minutes aussi.

ViPHP
ViPHP | 656 Messages

05 nov. 2006, 17:51

Si nécessaire, avec un meta refresh tu lances l'actualisation de cette page toutes les x secondes :)
Ohhh scandale :o
A l'heure du web v2 ne pas utiliser Ajax dans une pareil situation :!:

dany
Invité n'ayant pas de compte PHPfrance

05 nov. 2006, 17:54

je voudrais que mon script affiche comme c'est le cas, une image à une heure donnée du serveur, mais qu'il le fasse aussi pour les minutes.

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

05 nov. 2006, 19:58

dany >> dans la documentation de la fonction date() tu aurais trouvé ceci :
"h" Heure, au format 12h, avec les zéros initiaux 01 à 12
"H" Heure, au format 24h, avec les zéros initiaux 00 à 23
"i" Minutes avec les zéros initiaux 00 à 59
Tu peux même récupérer les secondes si tu veux :)
Ohhh scandale :o
A l'heure du web v2 ne pas utiliser Ajax dans une pareil situation :!:
horreur malheur !!! Vouloir mettre de l'ajax partout juste parce que c'est un "nom" à la mode ;)
Et pis j'ai tendance à les minimiser d'habitude, mais pour une fois que ça me sert : que faire de ceux qui désactive javascript ? :P

Sinon quitte à coller du javascript et un setTimeout(), un simple changement de src serait plus judicieux que de vouloir mettre de l'ajax... comme quoi :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

dany
Invité n'ayant pas de compte PHPfrance

05 nov. 2006, 20:12

comment formuler le script ???

ou et comment dois-je mettre "$minute = date("M");" dans mon script pour que je puisse appeler une image à une heure et une minute precise
<?
header("Content-type: image/gif");

$heure = date("H");
if($heure < 8)
     $image = "dodo.gif";
elseif($heure >= 11 && $heure < 12)
     $image = "11.gif";

readfile($image);
?>

Invité
Invité n'ayant pas de compte PHPfrance

05 nov. 2006, 20:39

ce n'est pas $minute = date("M");" mais $minute = date("i");"
mais comment l'inclure dans mon script

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

06 nov. 2006, 11:23

Bah tout dépend de ce que tu veux faire... si tu veux faire un truc différent à chaque minute, tu peux par exemple faire ceci :
$heure = date("Hi"); // format hhmm
switch($heure) {
  case '0000' : // minuit
    ...
    break;
  case '0001' : // 0h01
    ...
    break;
  case '0827' : // 8h27
    ...
    break;
  ...
  default : // tout ce qui n'a pas été prévu
    ...
    break;
}
Si tu veux fonctionner par interval, tu fais la même chose que pour tes heures :
$heure = date("H"); 
$minute = date("i"); 
...
if($heure == 11) // pour 11h
  if($minute < 20) // de 11h00 à 11h19
     $image = "1100.gif"; 
  elseif($minute < 40) // de 11h20 à 11h39
     $image = "1120.gif"; 
  else // de 11h40 à 11h59
     $image = "1140.gif"; 
}
...
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Dany
Invité n'ayant pas de compte PHPfrance

06 nov. 2006, 20:38

Merci Ryle. sympa ;+)

dany
Invité n'ayant pas de compte PHPfrance

06 nov. 2006, 23:56

j'ais un autre probleme lorsque je lance image.php :

<?
header("Content-type: image/gif");

$heure = date("H");
$minute = date("i");

if($heure == 22)
if($minute < 49)
$image = "11.gif";
elseif($minute < 50)
$image = "12.gif";
else ($minute < 51)
$image = "13.gif";


readfile($image);
?>

j'ais cette erreur :

Parse error: syntax error, unexpected T_VARIABLE in /home/danyd/www/php/image.php on line 13

une aide si possible..

Mammouth du PHP | 1776 Messages

07 nov. 2006, 00:27

Question : à part un produit nettoyant, c'est quoi AJAX ? Car moi connaitre jaascript mais pas ajax.... :roll:

ViPHP
ViPHP | 1961 Messages

07 nov. 2006, 00:34

Bonsoir,

Tu devrais mettre ton code entre les balises [ PHP] et [/PHP], mettre des accolades dans tes conditions

En faisant ça tu verais que ça
else ($minute < 51)
n'a pas beaucoup de sense.
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

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

07 nov. 2006, 00:44

Ton soucis vient bien du else comme l'a signalé Ajoloca :)
Question : à part un produit nettoyant, c'est quoi AJAX ? Car moi connaitre jaascript mais pas ajax.... :roll:
AJAX : Asynchronous Javascript And Xml ... en résumé, c'est un objet et deux fonctions javascript qui permettent d'appeller une page de ton site (en lui passant éventuellement des paramètres) et de lire ce qu'elle retourne (donc de l'exploiter en js) sans recharger la page depuis laquelle tu les exécutes...

C'est très pratique pour recharger juste une partie de ta page (liste liées, calenriers, lecteur rss, etc.) A part ça, c'est juste un joli nom donné à une vieille techno pour frimer à donf ! ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Mammouth du PHP | 1776 Messages

07 nov. 2006, 00:46

Ton soucis vient bien du else comme l'a signalé Ajoloca :)
Question : à part un produit nettoyant, c'est quoi AJAX ? Car moi connaitre jaascript mais pas ajax.... :roll:
AJAX : Asynchronous Javascript And Xml ... en résumé, c'est un objet et deux fonctions javascript qui permettent d'appeller une page de ton site (en lui passant éventuellement des paramètres) et de lire ce qu'elle retourne (donc de l'exploiter en js) sans recharger la page depuis laquelle tu les exécutes...

C'est très pratique pour recharger juste une partie de ta page (liste liées, calenriers, lecteur rss, etc.) A part ça, c'est juste un joli nom donné à une vieille techno pour frimer à donf ! ;)
looooooooooooooool et dire que moi mes listes liées je les traite intégralement en javascript :-D