Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

AVATAR PERSONNALISÉ POUR FORUM


Information sur la source

Description

Cliquez pour voir la capture en taille normale
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&start=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.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de Evangun le 20/08/2006 00:28:12

Salut, un fan de manga qui code pour assouvir sa passion, j'adore ^^ Nana c'est pas mon truc mais bon j'apprécie qd même :^)

Sinon, j'ai mis 1 mn à comprendre ce que faisait ton script, donc je précise pr ceux qui se posent la même question : il écrit un mot sur une image.

signaler à un administrateur
Commentaire de lordbdp le 18/05/2007 02:34:39

Le départ est cool.

J'aurai ajouter 2 fonctions :
- Télécharger une image
- Choisir à partir d'une liste de fontes

Bravo pour l'idée.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Splitter un texte en nombres [ par JMGR ] Je cherche à stocker les forum déja vus par les utilisateurs d'un forum que je crée, mais je ne désire pas utiliser le cookies qui sont je trouve, com affichage de texte et d'image quand on passe sur un lien [ par forngot ] Voila je voudrais savoir si c possible en php que quand on passe sur lien dans une page une petite fenetre apparait est affiche du texte et de l'image code perso: balises spéciales [ par Samiby ] Bonjour,Je programme actuellement un blog, et pour poster des lessages, j'ai créé un code personnalisé.J'ai un prblème avec les images.La syntaxe de m texte perso sur image [ par masseur ] Salut.Je voudrais mettre sur mon site une image d'un maillot par exemple et mettre un champ ou la personne tape son pseudo et hop ca réaffiche le mail texte sur image... librairie GD ? [ par ozitoun ] Bonjour bonjour,voili voilou, je cherche à mettre une texte sur une image (jpeg).j'ai essayé les imagestring, imagechar... mais à chaque fois les exem Ajout d'une id aléatoire dans une url [ par baab ] Bonjour,Voil&#224; dans une partie d'un programme que je fais, un visiteur cr&#233;e une image et ensuite je lui fournis l'url de l'image que je modif Session bizarroïde [ par malik7934 ] Hello,Je ne connais pas trop les sessions et j'ai un problème:J'ai un fichier pwd.php qui crée une image avec un text 'pwd':&lt;? session_start();func Caractères accentués avec ImageTTFText ? [ par bibos ] Bonjour,Je viens de me mettre à la génération d'images en PHP, et j'ai un premier problème sur lequel je bute depuis 24h...Et ça me parait tellement b une image en mode texte et inversement [ par ] bonjour a tous, voila mon probleme :j'ai dans un zip une image, je lis le contenu du zip avec la fonction zip_entry_read,jusque la &#231;a marche tres Telechargement d'image, redimensionnement et disposition dans un div [ par Nownow ] Bonjour &#224; tous,Malgr&#233; toute notre bonne volont&#233;, nous n'arrivons pas &#224; faire en sorte que notre image apparaisse dans l'emplacemen


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,842 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.