Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 11/04/2011, à 18:40

bazzanella

Un compteur graphique sur votre site (décompte en nombre de jours)

Bonjour à toutes et à tous,

vous aimeriez sur votre site avoir le décompte en jour de la livraison de la dernière version d'Ubuntu sous forme d'une image ?
un petit script développé rapidement en php :

Créer un fichier à la racine de votre site. Par exemple : ubuntu11.04.php
ayant comme contenu :

<?php

function degrade($img,$direction,$color1,$color2)
{
        if($direction=='h')
        {
                $size = imagesx($img);
                $sizeinv = imagesy($img);
        }
        else
        {
                $size = imagesy($img);
                $sizeinv = imagesx($img);
        }
        $diffs = array(
                (($color2[0]-$color1[0])/$size),
                (($color2[1]-$color1[1])/$size),
                (($color2[2]-$color1[2])/$size)
        );
        for($i=0;$i<$size;$i++)
        {
                $r = $color1[0]+($diffs[0]*$i);
                $g = $color1[1]+($diffs[1]*$i);
                $b = $color1[2]+($diffs[2]*$i);
                if($direction=='h')
                {
                        imageline($img,$i,0,$i,$sizeinv,imagecolorallocate($img,$r,$g,$b));
                }
                else
                {
                        imageline($img,0,$i,$sizeinv,$i,imagecolorallocate($img,$r,$g,$b));
                }
        }
        return $img;
}

header ("Content-type: image/png"); // 1 : on indique qu'on va envoyer une image PNG
// Définission de la variable d'environnement pour GD et de la police
putenv('GDFONTPATH=' . '/usr/share/fonts/truetype/msttcorefonts');
$font = 'arial.ttf'; 

// Taille de l'image et couleur
$image = imagecreatetruecolor(240, 100); 
$vert = imagecolorallocate($image, 99, 141, 21);
$vertfonce = imagecolorallocate($image, 68, 97, 14);
$bleuclair = imagecolorallocate($image, 156, 227, 254);
$noir = imagecolorallocate($image, 0, 0, 0);
$blanc = imagecolorallocate($image, 255, 255, 255);

// Le degrade de vert
$image = degrade($image,'v',array(99,141,21),array(68,97,14));
// La bande verticale de droite
ImageFilledRectangle ($image, 220, 0, 240, 100, $vertfonce);

// Comptage du nombre de jours restants avant le 28 Avril 2011
$date1 = date('d-m-Y');
$date2 = "28-04-2011";
$Nombres_jours = floor((strtotime($date2) - strtotime($date1))/(60*60*24));

// Pluriel ou singulier ou téléchargement
if ($Nombres_jours > 1) {
 $text = " jours restants ...";
}
if ($Nombres_jours == 1) {
 $text = " jour restant ...";
}
if ($Nombres_jours == 0) {
 $Nombres_jours = "11.04";
 $text = " Téléchargement";
}

 // Ajout d'ombres au texte Nombres_jours
 imagettftext($image, 40, 0, 81, 51, $noir, $font, $Nombres_jours);  
 imagettftext($image, 40, 0, 80, 50, $blanc, $font, $Nombres_jours);  

 // Ajout d'ombres au texte text
 imagettftext($image, 20, 0, 11, 86, $noir, $font, $text);  
 imagettftext($image, 20, 0, 10, 85, $blanc, $font, $text);  

 // Affichage verticale de Ubuntu 11.04
 imagestringup($image, 4, 220, 97, "Ubuntu 11.04", $blanc);

// Génération de l'image et libération mémoire
imagepng($image);
imagedestroy($image);  

?>

Le résultat produit est visible sur http://bazzanella.org dans le bandeau de droite.
Vous pouvez adapter et modifier ce code comme bon vous semble pour qu'il s'intègre à votre site.

Utilisation :

<img src="http://www.votresite.tld/ubuntu11.04.php" style="width:240px;height:100px;" alt="Ubuntu 11.04 bientôt ..."/>

Dernière modification par bazzanella (Le 11/04/2011, à 20:32)


"Sans contrôle total de l'utilisateur, le logiciel n'est rien."
Mes pages Internet

Hors ligne