Ce code est un additif qui construit une image 'ctr2.jpg' du compteur de visites (CTR) si vous utilisez
par ailleurs le logiciel de statistiques phpMyVisites
Dans un sous-répertoire /images, vous aurez à stocker les images des digits 0 à 9 sous forme de 1.jpg 2.jpg etc..
Le nombre de visites précédent est stocké dans un fichier texte : compteur.txt


le code à installer dans un fichier ctr.php par exemple :
<?php
$host="localhost"; //indiquer ici l'hote par exemple localhost ou l'ip du serveur
$user="root"; //indiquer ici un nom d'utilisateur MySQL par exemple root bien qu'a eviter plutot creer un user pour php
$base="mybase"; //indiquer ici le nom de la base de donnée
$passe="password";  //indiquer ici le mot de passe 
if (!($dblink=mySql_connect($host,$user,$passe)))
{
 //echo "<h2>La Connexion a échoué !</h2>\n";
// die ("<br><h2>Arret Immédiat!</h2>\n");
 exit();
}
 $namtbl="phpmv_visit"; // nom de la table à explorer
 $namfield="idvisit"; // nom du champ dans cette table
 $select_base=mySql_selectdb($base,$dblink);  //selectionne la base de donnée
 $query="SELECT * FROM ".$namtbl; //Stocke dans $query la requete SQL
 $dbresult=mysql_query($query,$dblink); //Execute la requete
 if (!(mysql_query($query,$dblink)))
 { 
 //echo "<b>Désolé, la table ".$namtbl." est absente dans la base, </b>\n";
 exit();
 }
// recherche du dernier enregistrement (idvisit)
$query="SELECT MAX(idvisit) FROM ".$namtbl; //Stocke la requete de max(idvisit)
$result=mysql_query($query,$dblink); //Execute la requete
if (!$result) {
//  echo 'Impossible d/'exécuter la requête : ' . mysql_error();
 exit();
}
$row = mysql_fetch_row($result);
//echo $row[0]; // champ idvisit
$visit = $row[0];
//echo "visit: ".$visit."</br>";
//MAJ Visites et Création Image du Compteur
$text="";
$fic="";
$Ndig=6; // nombre de digits d'affichage
$bias=1234;  // différence originale si le CTR ne part pas de zéro
//
  $fp=fopen('compteur.txt','r'); //Ouvre le fichier compteur.txt en lecture
  $oldvisit=fgets($fp,20); // Récupère 20 premiers octets
  fclose($fp); // Ferme fichier
$dvisit = $visit - $oldvisit;
//echo "  DVisites : ".$dvisit."</br>";  
if ( $dvisit > 0) // s'il y a eu une ou des visites
{   
  $fp=fopen('compteur.txt','w');  // Ouvre le fichier en ecriture
  fputs($fp,$visit); // Mémorise la nouvelle valeur
  fclose($fp);  // Ferme fichier
// 
$myvisit = $bias + $visit;
$text = strval($myvisit);
//echo "  text : ".$text."</br>";
  // Le texte à dessiner
  $text=str_pad($text, $Ndig, "0", STR_PAD_LEFT);
  // Création de l'image
  $Dim = imagecreate(10*$Ndig, 12); // crée une image de (10xNdig x 12) pixels
  $nx=0;
while($nx<strlen($text))
{
    $digit=$text{$nx};
	$fic="images/".$digit.".jpg"; // construit l'image du CTR
    $image = imagecreatefromjpeg($fic);
    imagecopy($Dim, $image, $nx*10, 0, 0, 0, 10, 12);
    $nx++;
}
$fh = fopen('ctr2.jpg','w'); // Ouvre le fichier en ecriture
 imagejpeg($Dim,'ctr2.jpg');//sauve l'image dans fichier 'ctr2.jpg'
 imagedestroy($Dim); // détruit l'image du CTR
} 
?>

dans la page affichant le CTR, insérer les lignes suivantes:


<!-- MAJ compteur de visites -->
<?php
include ("ctr.php");
?>

puis afficher le CTR par <img src="ctr2.jpg" alt="ctr">
top
© JPSoft - 2007