Nil Le 14/05/2003 à 10:14Edité par Nil le 14/05/2003 à 15:37 <?php
//Note de programmation : ne pas mettre l'extension ".ttf" lorsque des appels à des polices sont nécessaires !
//Paramètres passés :
//Texte, fichier PNG source, site (pour la skin standard), visiteur (pour la skin personnalisée), type (bouton ou titre)
//$Texte
//$Fichier
//$NumeroSite
//$NumeroVisiteur
//$Type
//$Largeur
//$Hauteur
//Récupération des paramètres de bouton pour le site visité et l'utilisateur :
//Police, couleur de police, couleur de fond, taille de police, taille de bouton (x, y), image source
$ServeurMySQL='localhost'; //Adresse IP ou nom d'hôte du serveur MySQL
$UtilisateurMySQL='***'; //Nom de l'utilisateur se connectant au serveur MySQL
$MotDePasseMySQL='***'; //Mot de passe de l'utilisateur
$NomBaseMySQL='Universel'; //Nom de la base MySQL dans laquelle se trouvent les informations
$NumeroSite=1; //Numéro du site
require("OuvrirMySQL.php");
// $LienMySQL=@mysql_connect($ServeurMySQL, $UtilisateurMySQL, $MotDePasseMySQL) or die ("Echec lors de la connexion au serveur MySQL");
// @mysql_select_db($NomBaseMySQL, $LienMySQL) or die ("Echec lors de la connexion à la base MySQL");
$Requete="SELECT s.CouleurFond1R, s.CouleurFond1V, s.CouleurFond1B, s.CouleurFond2R, s.CouleurFond2V, s.CouleurFond2B ";
if ($Type=='Bouton')
{
$Requete.=", m.TaillePoliceBouton, m.PoliceBouton, s.CouleurPoliceBoutonR, s.CouleurPoliceBoutonV, s.CouleurPoliceBoutonB ";
}
else if ($Type=='Titre')
{
$Requete.=", s.CouleurPoliceTitre, m.PoliceTitre, m.TaillePoliceTitre ";
}
$Requete.="FROM utilisateur u, skin s, miseenformesite m ";
$Requete.="WHERE m.NumeroSite=$NumeroSite AND u.NumeroSkin=s.Numero AND u.Numero=$NumeroVisiteur";
$ResultatRequete=mysql_query($Requete, $LienMySQL);
if (mysql_fetch_row($ResultatRequete))
{
$CouleurFond1R=mysql_result($ResultatRequete, 0, 0);
$CouleurFond1V=mysql_result($ResultatRequete, 0, 1);
$CouleurFond1B=mysql_result($ResultatRequete, 0, 2);
$CouleurFond2R=mysql_result($ResultatRequete, 0, 3);
$CouleurFond2V=mysql_result($ResultatRequete, 0, 4);
$CouleurFond2B=mysql_result($ResultatRequete, 0, 5);
$TaillePolice=mysql_result($ResultatRequete, 0, 6);
$Police=mysql_result($ResultatRequete, 0, 7);
$CouleurPoliceR=mysql_result($ResultatRequete, 0, 8);
$CouleurPoliceV=mysql_result($ResultatRequete, 0, 9);
$CouleurPoliceB=mysql_result($ResultatRequete, 0, 10);
}
require("FermerMySQL.php");
/* $CouleurFond1=45;
$CouleurFond2=24;
$TaillePolice=12;
$Police='times';
$CouleurPolice=154 ;*/
//Sortie : fichier ".PNG".
$Texte=StripSlashes($Texte);
// $TailleTexte=ImageTTFBBox($TaillePolice,0,$Police,$Texte);
$TailleTexte=ImageTTFBBox($TaillePolice,0,$Police,$Texte);
$LargeurTexte=abs($TailleTexte[2]-$TailleTexte[0]);
$HauteurTexte=abs($TailleTexte[5]-$TailleTexte[3]);
$im=ImageCreate($Largeur,$Hauteur) or die ("Erreur lors de la création de l'image");
$CouleurFond1=ImageColorAllocate($im, $CouleurFond1R, $CouleurFond1V, $CouleurFond1B);
$CouleurFond2=ImageColorAllocate($im, $CouleurFond2R, $CouleurFond2V, $CouleurFond2B);
$CouleurPolice=ImageColorAllocate($im, $CouleurPoliceR, $CouleurPoliceV, $CouleurPoliceB);
ImageLine($im, 1, 1, $Largeur-2, 1, $CouleurFond2);
ImageLine($im, 1, $Hauteur-2, $Largeur-2, $Hauteur-2, $CouleurFond2);
ImageLine($im, 1, $Hauteur-2, 1, 1, $CouleurFond2);
ImageLine($im, $Largeur-2, $Hauteur-2, $Largeur-2, 1, $CouleurFond2);
// ImageTTFText($im, $TaillePolice, 0, (int)(($Largeur-$LargeurTexte)/2), (int)(($Hauteur+$HauteurTexte)/2), $noir, $Police, $Texte);
ImageTTFText($im, $TaillePolice, 0, (int)(($Largeur-$LargeurTexte)/2), (int)(($Hauteur+$HauteurTexte)/2), $CouleurPolice, $Police, $Texte);
Header ("Content-type:image/png");
ImagePNG($im);
ImageDestroy($im);
?>
