L'éditeur JavaScript
Visiteur non-identifié | Identifiez-vous | Devenir membre
Code perdu ? | Combien de visiteurs sur votre site ?
Rechercher :
Page d'accueil
     Home Page

JavaScript
     Tous les scripts
     Proposer un script
     Recherche de script
     AJAX
     Cours de JavaScript
     Liste de discussion
     Forums

Services :
     CountUs
     myCircle
     ClickInText
     XooIt

Trucs et astuces :
     HTML / CSS
     PHP / MySQL
     Réferencement
     Graph / Présentation
     Toutes les astuces
     Ajouter un article

MailingList :
113687 abonnés

Annuaire webmaster :      Hebergement web
     Referencement
     Sites webmasters
     XHTML - CSS2
     PHP
     Affiliation - Pub
     FAI

     Annuaire webmaster

Ressources pour webmasters :
     Kit graphique
     Foire aux questions
     Les membres
     Devenir annonceur
     Faire un lien
     Contact

Partenaire :
     Compteur live
     Créer un forum
     Le PHP facile
     Comscripts
     Liens sponsorisés
     Page Rank
     Gifs animés, f...
     Easy-script.com
     Le village de ...
     La cuisine de ...
     Web creation ...
     Créer son site...
     Azote.org - no...
     Les kits graph...
     Electroniq...
     Poésie et cita...
     Les autres
     Votre site ici ?


Article posté par : krucial
Date de mise en ligne : 27-04-2004
Niveau : Assez facile
>> Ajouter un article

Afficher une image avec du PHP


Le PHP ne sert qu'à afficher des pages web ? Non non non ! PHP peut aussi s'afficher sous forme d'image ! Les applications possibles sont alors sans limite !

Vous croyez sans doute que faire générer une image par PHP est fastidieux et demande les librairies adéquates. Je vais vous montrer par exemple simple que ce n'est pas forcement le cas !


L'exemple : une image suivant l'heure

Le but de cette exercice est donc d'afficher, suivant l'heure de la journée, une image précise.
De minuit à 8 heures : dodo.gif


De 8 à 12h : matin.gif


De 12 à 14h : midi.gif


De 12 à 18h : pm.gif


De 18h à minuit : soir.gif


(Vous remarquerez mes talents de graphiste)


Le script PHP

Nous allons créer un fichier image.php.
La première étape et de faire comprendre au navigateur que nous allons lui envoyer une image et non une page web avec les headers appropriés :

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

Il suffit ensuite de regarder l'heure actuelle, et de selectionner l'image correspondante :
<?
$heure = date("H");
if($heure < 8)
     $image = "dodo.gif";
elseif($heure >= 8 && $heure < 12)
     $image = "matin.gif";
elseif($heure >= 12 && $heure < 14)
     $image = "midi.gif";
elseif($heure >= 14 && $heure < 18)
     $image = "pm.gif";
elseif($heure >= 18)
     $image = "soir.gif";
?>

A ce stade, la variable $image à pour valeur le nom de l'image à afficher. Il est donc facile de joindre l'image correspondante (en supposant que les images soient dans le même repertoire que notre fichier image.php) :
<?
readfile($image);
?>

Voici donc le script complet du fichier image.php:
<?
header("Content-type: image/gif");

$heure = date("H");
if($heure < 8)
     $image = "dodo.gif";
elseif($heure >= 8 && $heure < 12)
     $image = "matin.gif";
elseif($heure >= 12 && $heure < 14)
     $image = "midi.gif";
elseif($heure >= 14 && $heure < 18)
     $image = "pm.gif";
elseif($heure >= 18)
     $image = "soir.gif";

readfile($image);
?>

Il vous suffit ensuite d'appeler ce fichier dans n'importe quelle page comme si vous appeliez une image :
<img src="image.php" alt=""/>


Résultat :




Applications possibles et limites :

Si le fait d'afficher une image suivant l'heure n'est pas vraiment utile, les applications possibles sont multiples :
Compteur façon Xiti, gestionnaire de publicité, etc ...
Au niveau des limites, il vous est impossible de cete façon de créer un compteur classique autrement qu'en créant des images allant de 1 à 10000000 ... Fastidieux ! Pour réaliser de telles applications, vous devrez passer par les fonctions images de PHP, à conditions que les librairies appropriés soient installées.

Voir aussi : Création d'images à l'aide des libs GD et TTF


Annotations des visiteurs :

Pas d'annotation pour cette astuce.
>> Poster une annotation sur cette astuce

Retour à la liste des trucs et astuces





compteur gratuit
actuellement en ligne

    PUBLICITE



     ANNUAIRE WEBMAST.
Neuf telecom
Gros concurent de Free, Neuf propose des tarifs bas.
http://www.neuf.fr
Cat : Haut débit
Voir l'annuaire webmaster


     LES SCRIPTS :
78 à éditer
68 à copier/coller
247 des membres
2580 sur le web
>> Tous les scripts

     LES MEMBRES :
61312 membres
7202 comptes CountUs
1721 comptes myCircle

     LES FORUMS :
14 forums
39941 topics
190891 messages
>> Les forums

    SONDAGE

Vous avez un blog ou site classique ?
Un blog
Un site classique
Les deux !
La mini-astuce "HTML / CSS" du jour par fred
L'attribut media vous permet de définir une feuille de style différente selon le média de sortie : affichage dans un navigateur (media="screen"), impression (media="print"), impression en braille (media="embossed"), etc. Syntaxe : <link rel="stylesheet" media="screen" href="style.css">
Proposer votre mini-astuce | Archives des mini-astuces
© 1999-2010 EJS - Tous droits réservés | CNIL N° 844440 | 19/03/2010 04:43:31 | Design by | Gen. en 0.476 sec.