Accueil > > > AVATAR PERSONNALISÉ POUR FORUM
AVATAR PERSONNALISÉ POUR FORUM
Information sur la source
Description
ce code fonctionne à l'aide d'un fichier .htaccess et d'un fichier PHP. à l'aide d'un seul et meme lien on a le choix de l'image (aléatoire possible), on peut ajouter son pseudo, changer la taille et la couleur du pseudo. pour plus d'info allez voir sur http://nananime.forumpro.fr/viewtopic.forum?t=6&st art=30 PS: tout ceci ne sert à rien
Source
- #fichier .htaccess
- Options +FollowSymlinks
- RewriteEngine on
- RewriteRule ^avatar_(.*)_(.*)_(.*)_(.*)\.png http://votre_site.fr/avatar.php?img=$1&nom=$2&px=$3&color=$4 [L]
-
- #fichier PHP
- <?
-
- // headers pour que le fichier soit bien interprété en temps qu'image
- header("Content-type: image/png"); //Format de l'image
- header("Expires: Mon, 01 Jul 2003 00:00:00 GMT"); // Date du passé
- header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // Modifié continuellement
- header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
- header("Pragma: no-cache"); // Pas de cache
-
- //choix de l'image par la variable img
- if (isset($_GET['img']))
- {
- $page = $_GET['img'];
- switch($img)
- {
- case 'shin': $bg =imagecreatefromgif("./shin.gif");break;
- case 'misato': $bg =imagecreatefromgif("./misato.gif");break;
- case 'nobuo': $bg =imagecreatefromgif("./nobuo.gif");break;
- case 'nana': $bg =imagecreatefromgif("./nana.gif");break;
- case 'hachi': $bg =imagecreatefromgif("./hachi.gif");break;
- case 'alea': $nbimages=5; //nombre d'images aléatoires
- $nomimages[1]="shin.gif";
- $nomimages[2]="misato.gif";
- $nomimages[3]="nobuo.gif";
- $nomimages[4]="nana.gif";
- $nomimages[5]="hachi.gif";
- srand((double)microtime()*1000000); //initialisation
- $affimage=rand(1,$nbimages); //variable qui gère une image aléatoire
- $bg =imagecreatefromgif($nomimages[$affimage]);break; //affiche l'image aléatoire
- case '' : $bg =imagecreatefromgif("./hachi.gif");break;
- }
- } else {
- $bg =imagecreatefromgif("./hachi.gif");
- }
-
- // Couleur du Texte
- if (isset($_GET['color'])) //recuperation de la couleur de la police dans l'adresse par la variable color
- {
- $page = $_GET['color'];
- switch($color)
- {
- case 'blanc': $textcolor = imagecolorallocate($bg, 0, 0, 0);break;
- case 'noir': $textcolor = imagecolorallocate($bg, 255, 255, 0);break;
- case 'rouge': $textcolor = imagecolorallocate($bg, 255, 0, 0);break;
- case 'bleu': $textcolor = imagecolorallocate($bg, 0, 0, 255);break;
- case 'vert': $textcolor = imagecolorallocate($bg, 0, 255, 0);break;
- case 'jaune': $textcolor = imagecolorallocate($bg, 255, 255, 0);break;
- case 'rose': $textcolor = imagecolorallocate($bg, 255, 0, 255);break;
- case '' : $textcolor = imagecolorallocate($bg, 175, 37, 0);break;
- }
- } else {
- $textcolor = imagecolorallocate($bg, 175, 37, 0);
- }
-
- //Chargement et configuration de la police (taille, police etc.)
- if (isset($_GET['px']))//recuperation de la taille de la police dans l'adresse par la variable px
- {
- $fontsize = $_GET['px'];
- } else {
- $fontsize = 20;
- }
- putenv('GDFONTPATH=' . realpath('.'));
- $font = './MATURASC.TTF';
-
- //recuperation du non dans l'adresse par la variable nom
- $nom = $_GET['nom'];
-
- //Affichage du nom de l'utilisateur
- imagettftext($bg, $fontsize, 00, 3, 30, $textcolor, $font, $nom);
-
- //Création de l'image png
- imagepng($bg);
- imagedestroy($bg);
#fichier .htaccess
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^avatar_(.*)_(.*)_(.*)_(.*)\.png http://votre_site.fr/avatar.php?img=$1&nom=$2&px=$3&color=$4 [L]
#fichier PHP
<?
// headers pour que le fichier soit bien interprété en temps qu'image
header("Content-type: image/png"); //Format de l'image
header("Expires: Mon, 01 Jul 2003 00:00:00 GMT"); // Date du passé
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // Modifié continuellement
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Pragma: no-cache"); // Pas de cache
//choix de l'image par la variable img
if (isset($_GET['img']))
{
$page = $_GET['img'];
switch($img)
{
case 'shin': $bg =imagecreatefromgif("./shin.gif");break;
case 'misato': $bg =imagecreatefromgif("./misato.gif");break;
case 'nobuo': $bg =imagecreatefromgif("./nobuo.gif");break;
case 'nana': $bg =imagecreatefromgif("./nana.gif");break;
case 'hachi': $bg =imagecreatefromgif("./hachi.gif");break;
case 'alea': $nbimages=5; //nombre d'images aléatoires
$nomimages[1]="shin.gif";
$nomimages[2]="misato.gif";
$nomimages[3]="nobuo.gif";
$nomimages[4]="nana.gif";
$nomimages[5]="hachi.gif";
srand((double)microtime()*1000000); //initialisation
$affimage=rand(1,$nbimages); //variable qui gère une image aléatoire
$bg =imagecreatefromgif($nomimages[$affimage]);break; //affiche l'image aléatoire
case '' : $bg =imagecreatefromgif("./hachi.gif");break;
}
} else {
$bg =imagecreatefromgif("./hachi.gif");
}
// Couleur du Texte
if (isset($_GET['color'])) //recuperation de la couleur de la police dans l'adresse par la variable color
{
$page = $_GET['color'];
switch($color)
{
case 'blanc': $textcolor = imagecolorallocate($bg, 0, 0, 0);break;
case 'noir': $textcolor = imagecolorallocate($bg, 255, 255, 0);break;
case 'rouge': $textcolor = imagecolorallocate($bg, 255, 0, 0);break;
case 'bleu': $textcolor = imagecolorallocate($bg, 0, 0, 255);break;
case 'vert': $textcolor = imagecolorallocate($bg, 0, 255, 0);break;
case 'jaune': $textcolor = imagecolorallocate($bg, 255, 255, 0);break;
case 'rose': $textcolor = imagecolorallocate($bg, 255, 0, 255);break;
case '' : $textcolor = imagecolorallocate($bg, 175, 37, 0);break;
}
} else {
$textcolor = imagecolorallocate($bg, 175, 37, 0);
}
//Chargement et configuration de la police (taille, police etc.)
if (isset($_GET['px']))//recuperation de la taille de la police dans l'adresse par la variable px
{
$fontsize = $_GET['px'];
} else {
$fontsize = 20;
}
putenv('GDFONTPATH=' . realpath('.'));
$font = './MATURASC.TTF';
//recuperation du non dans l'adresse par la variable nom
$nom = $_GET['nom'];
//Affichage du nom de l'utilisateur
imagettftext($bg, $fontsize, 00, 3, 30, $textcolor, $font, $nom);
//Création de l'image png
imagepng($bg);
imagedestroy($bg);
Conclusion
bon nombre des astucces utilisées viennent de se site, donc merci à tous.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Texte ou image aléatoire [ par ndmsp ]
Bonsoir à tous. Je cherche un script (php ?), qui me permettrais d'afficher aléatoirement une image ou un texte... Connaissez vous une méthode ??? Bie
GD + taille de texte [ par Kickaha59 ]
Bonjour à tous,J'utilise une page avec le font-family Arial. J'utilise le drag&drop pour déplacer des morceaux de texte sur une image. Je peux don
Problème avec GD & Image_Text [ par BencoAndCo ]
Bonjour, J'utilise EasyPhp 3.0 pr tester mon site web en local mais depuis un certain tps j'essaye de faire un Captcha j'ai telechargé la lib pear c
Problème sur l'upload d'image [ par ren999 ]
bonjour a tous je suis en train de créer mon site et j'ai l'intention d'utiliser la méthode forum pour créer les pages web tout marche bien sauf l'upl
Imagestring PHP et balises HTML [ par sylvainbrt ]
Bonjour, J'ai regardé un peu partout sur le net et je n'ai trouvé aucune réponse à la question que je me pose. Pour mettre du texte sur une image, av
Animation de carrousel : texte + image [ par ronley ]
Bonjour, J'aimerais faire tourner le texte en même temps que l'image de fond mais je ne sais pas comment faire. Voici la page : http://raulnet.loyal
Adapter longueur image selon longueur texte [ par shadow578 ]
Bonjour, Voilà bon j'explique j'ai une image et j'aimerai afficher du texte à l'intérieure de cette image. Bon sa peut paraître simple mais maintenan
Edito en php [ par TheSteph18 ]
Bonjour, Je suis débutant en PHP et j'essaie de créer un petit édito tout simple avec ajout d'une image de type jpeg ou png. Je me suis basé sur des t
L'éditeur de texte du forum [ par jbphp ]
Bonjour,comment pourais-je récuperer le logiciel que permet de poster les messages sur le forum,l'éditeur qui me permet de poster le msg que j'écrie e
probleme lors de transfert via post [ par ]
quand je transfert une image sous forme de texte ( image lu avec un fread) par la methode POST j'ai la désagréable surprise de constater que
|
Derniers Blogs
[WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : SONDAGE..RE : SONDAGE.. par phpAnonyme
Cliquez pour lire la suite par phpAnonyme RE : SONDAGE..RE : SONDAGE.. par TychoBrahe
Cliquez pour lire la suite par TychoBrahe
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|