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 !

AFFICHER UN CODE, UN TEXTE, SOUS LA FORME D'UNE IMAGE PLUS OU MOINS DÉFORMÉE (OUTIL PERMETTANT DE LIMITER LE SPAM ET DE STOPPER LES BOTS)


Information sur la source

Description

Cliquez pour voir la capture en taille normale
//==============================================================================
//                          D E S C R I P T I O N
//==============================================================================
//|                                                                            |
//| FICHIER : CreateImageFromText.php                                          |
//|                                                                            |
//| OBJECTIF : écrit un texte sous une forme imagée et tordue paramétrable.    |
//|                                                                            |
//|       Réalisé par BlueMan (http://www.blueman.name/me_contacter.php)       |
//|                                                                            |
//==============================================================================
//
// ATTENTION : pour fonctionner, ce script nécessite :
//
//      la police TrueType "Seawawe Extended Keyset" : "Seawek.ttf"
//      qui doit être placée dans le même répertoire que ce script.
//
// Les Paramètres sont CASE INSENSITIVE et leur ordre n'a aucune importance.
//
// Les Paramètres possibles en entrée sont :
//
//==============================================================================
//|                      |                                 |    OBLIGATOIRE    |
//|      PARAMÈTRE       |             ROLE                |         ou        |
//|                      |                                 | VALEUR PAR DÉFAUT |
//|============================================================================|
//| Text = Letexte       | Le texte à transformer en image |        Oui        |
//|----------------------------------------------------------------------------|
//| Size = n             | La taille de la police au sens  |         20        |
//|                      | windows (8, 10, 12 , 14, etc.)  |                   |
//|----------------------------------------------------------------------------|
//| Color = RRVVBB       | La couleur des lettres en Hexa  |   0000FF (bleu)   |
//|----------------------------------------------------------------------------|
//| MaxAngle = a         | Les caractères seront écrits    |                   |
//|                      | avec un angle exprimé en degré  |        20         |
//|                      | dans [-MaxAngle , +MAxAngle]    |                   |
//-----------------------------------------------------------------------------|
//| BGColor = RRVVBB     | La couleur de remplissage du    |  FFFFFF (blanc)   |
//|                      | fond en Hexa                    |                   |
//|----------------------------------------------------------------------------|
//| Border = true|false  | Avec ou sans cadre              |        true       |
//|----------------------------------------------------------------------------|
//| BorderColor = RRVVBB | La couleur du cadre en Hexa     |  000000 (noir)    |
//|----------------------------------------------------------------------------|
//| Gutter = g           | Le nombre de pixels de la       |                   |
//|                      | gouttière séparant le texte de  |         6         |
//|                      | la bordure.                     |                   |
//|----------------------------------------------------------------------------|
//| Quality = q          | Un nombre dans [0,100]          |                   |
//|                      | indiquant la qualité de         |        40         |
//|                      | l'image JPEG.                   |                   |
//------------------------------------------------------------------------------
//
//               Exemples de codes à placer dans votre source :
//               ----------------------------------------------
//
// Exemple 1 : echo "<IMG src='CreateImageFromText.php?Text=ABCDE'>";
//
// Exemple 2 : echo "<IMG src='CreateImageFromText.php?Cadre=false&Text=ABCDE&MaxAngle=12&Color=FF0000' align='absmiddle'>";
//
//                             Exemples vivants :
//                             ------------------
//
// Exemple vivant 1 : http://www.blueman.name/me_contacter.php
//
// Exemple vivant 2 : http://www.blueman.name/Telechargement.php
//
// Exemple vivant 3 : http://www.agiradesainthubert.ca/ContactFr.php
//
 

Source

  • <?php
  • //==============================================================================
  • // D E S C R I P T I O N
  • //==============================================================================
  • //| |
  • //| FICHIER : CreateImageFromText.php |
  • //| |
  • //| OBJECTIF : écrit un texte sous une forme imagée et tordue paramétrable. |
  • //| |
  • //| Réalisé par BlueMan (http://www.blueman.name/me_contacter.php) |
  • //| |
  • //==============================================================================
  • //
  • // ATTENTION : pour fonctionner, ce script nécessite :
  • //
  • // la police TrueType "Seawawe Extended Keyset" : "Seawek.ttf"
  • // qui doit être placée dans le même répertoire que ce script.
  • //
  • // Les Paramètres sont CASE INSENSITIVE et leur ordre n'a aucune importance.
  • //
  • // Les Paramètres possibles en entrée sont :
  • //
  • //==============================================================================
  • //| | | OBLIGATOIRE |
  • //| PARAMÈTRE | ROLE | ou |
  • //| | | VALEUR PAR DÉFAUT |
  • //|============================================================================|
  • //| Text = Letexte | Le texte à transformer en image | Oui |
  • //|----------------------------------------------------------------------------|
  • //| Size = n | La taille de la police au sens | 20 |
  • //| | windows (8, 10, 12 , 14, etc.) | |
  • //|----------------------------------------------------------------------------|
  • //| Color = RRVVBB | La couleur des lettres en Hexa | 0000FF (bleu) |
  • //|----------------------------------------------------------------------------|
  • //| MaxAngle = a | Les caractères seront écrits | |
  • //| | avec un angle exprimé en degré | 20 |
  • //| | dans [-MaxAngle , +MAxAngle] | |
  • //-----------------------------------------------------------------------------|
  • //| BGColor = RRVVBB | La couleur de remplissage du | FFFFFF (blanc) |
  • //| | fond en Hexa | |
  • //|----------------------------------------------------------------------------|
  • //| Border = true|false | Avec ou sans cadre | true |
  • //|----------------------------------------------------------------------------|
  • //| BorderColor = RRVVBB | La couleur du cadre en Hexa | 000000 (noir) |
  • //|----------------------------------------------------------------------------|
  • //| Gutter = g | Le nombre de pixels de la | |
  • //| | gouttière séparant le texte de | 6 |
  • //| | la bordure. | |
  • //|----------------------------------------------------------------------------|
  • //| Quality = q | Un nombre dans [0,100] | |
  • //| | indiquant la qualité de | 40 |
  • //| | l'image JPEG. | |
  • //------------------------------------------------------------------------------
  • //
  • // Exemples de codes à placer dans votre source :
  • // ----------------------------------------------
  • //
  • // Exemple 1 : echo "<IMG src='CreateImageFromText.php?Text=ABCDE'>";
  • //
  • // Exemple 2 : echo "<IMG src='CreateImageFromText.php?Cadre=false&Text=ABCDE&MaxAngle=12&Color=FF0000' align='absmiddle'>";
  • //
  • // Exemples vivants :
  • // ------------------
  • //
  • // Exemple vivant 1 : http://www.blueman.name/me_contacter.php
  • //
  • // Exemple vivant 2 : http://www.blueman.name/Telechargement.php
  • //
  • // Exemple vivant 3 : http://www.agiradesainthubert.ca/ContactFr.php
  • //
  • //------------------------------------------------------------------------------
  • // I M P L É M E N T A T I O N
  • //------------------------------------------------------------------------------
  • // Définition du Header : obligatoire et obligatoirement le premier elément envoyé
  • // au navigateur
  • header("Content-type: image/jpeg");
  • // On rend case insensitive, pour le développeur, le nom des paramètres,
  • // ceci afin de limiter les erreurs idiotes engendrant des pertes de temps.
  • // On les transforme tous en MAJUSCULES
  • if (IsSet($_GET)) $_GET = array_change_key_case($_GET, CASE_UPPER);
  • // Récupération ou non des paramétres
  • // Le Texte
  • if ( IsSet($_GET['TEXT'])) {$Text = $_GET['TEXT'];} else {$Text = "";}
  • // Calcul du nombre de lettres
  • $NbLettres = StrLen($Text);
  • if ($NbLettres == 0) Exit;
  • // La Taille de la police du texte
  • if ( IsSet($_GET['SIZE']) and ($_GET['SIZE'] > 0)) { $TaillePolice = $_GET['SIZE'];}
  • else {$TaillePolice = 20;}
  • // La couleur des lettres à écrire
  • if ( IsSet($_GET['COLOR']))
  • {
  • $Couleur = $_GET['COLOR'];
  • $RougeLettres=IntVal(SubStr($Couleur,0,2),16);
  • $VertLettres=IntVal(SubStr($Couleur,2,2),16);
  • $BleuLettres=IntVal(SubStr($Couleur,4,2),16);
  • }
  • else {$RougeLettres=0; $VertLettres=0; $BleuLettres=255;}
  • // Les caractères seront écrits avec un angle exprimé en degré dans [-MaxAngle , +MAxAngle]
  • if ( IsSet($_GET['MAXANGLE']) and ($_GET['MAXANGLE'] >= 0)) {$MaxAngle = $_GET['MAXANGLE'];}
  • else {$MaxAngle = 20;}
  • // La couleur de fond
  • if ( IsSet($_GET['BGCOLOR']))
  • {
  • $Couleur = $_GET['BGCOLOR'];
  • $RougeFond=IntVal(SubStr($Couleur,0,2),16);
  • $VertFond=IntVal(SubStr($Couleur,2,2),16);
  • $BleuFond=IntVal(SubStr($Couleur,4,2),16);
  • }
  • else {$RougeFond=255; $VertFond=255; $BleuFond=255;}
  • // L'utilisateur veut-il un cadre ?
  • // On a utilisé strtolower afin de rendre case insensitive l'écriture des
  • // booléens destinés au paramètre CADRE
  • if ( IsSet($_GET['BORDER'])) {$IsCadre = !(strtolower($_GET['BORDER']) == "false");}
  • else {$IsCadre = true;}
  • // La couleur du cadre
  • if ($IsCadre and IsSet($_GET['BORDERCOLOR']))
  • {
  • $Couleur = $_GET['BORDERCOLOR'];
  • $RougeCadre=IntVal(SubStr($Couleur,0,2),16);
  • $VertCadre=IntVal(SubStr($Couleur,2,2),16);
  • $BleuCadre=IntVal(SubStr($Couleur,4,2),16);
  • }
  • else {$RougeCadre=0; $VertCadre=0; $BleuCadre=0;}
  • // La gouttière
  • if ( IsSet($_GET['GUTTER']) and ($_GET['GUTTER'] > -1)) {$Gutter = $_GET['GUTTER'];}
  • else {$Gutter = 6;}
  • // La qualité
  • if ( IsSet($_GET['QUALITY']) and ($_GET['QUALITY'] > -1)) {$Quality = $_GET['QUALITY'];}
  • else {$Quality = 40;}
  • // Calcul de la taille de l'image
  • // Cette police est particulièrement bien adaptée à cette tâche
  • $Font = "Seawek.ttf"; // Nom complet : Seawave Extended Keyset (TrueType)
  • $Hauteur = $TaillePolice;
  • $Pos = $Gutter;
  • $HauteurMax = 0;
  • for ($i=0; $i<$NbLettres; $i++)
  • {
  • $Angle = rand(-$MaxAngle,$MaxAngle);
  • $InfoRect= ImageTTFBbox($TaillePolice, $Angle, $Font, $Text[$i]);
  • $LargeurCar1 = $InfoRect[2]-$InfoRect[6];
  • $LargeurCar2 = $InfoRect[4]-$InfoRect[0];
  • if ($LargeurCar1 > $LargeurCar2) {$LargeurCar = $LargeurCar1;} else {$LargeurCar = $LargeurCar2;}
  • $HauteurCar1 = $InfoRect[1]-$InfoRect[5];
  • $HauteurCar2 = $InfoRect[3]-$InfoRect[7];
  • if ($HauteurCar1 > $HauteurCar2) {$HauteurCar = $HauteurCar1;} else {$HauteurCar = $HauteurCar2;}
  • if ($HauteurCar > $HauteurMax) {$HauteurMax=$HauteurCar;}
  • if ($InfoRect[6] > $InfoRect[0]) {$OffsetX = $InfoRect[0];} else {$OffsetX = $InfoRect[6];}
  • if ($InfoRect[7] > $InfoRect[5]) {$OffsetY = $InfoRect[5];} else {$OffsetY = $InfoRect[7];}
  • $aDatas[] = array($Pos, $Angle, $LargeurCar, $HauteurCar, $OffsetX, $OffsetY);
  • $Pos = $Pos + $LargeurCar;
  • }
  • $Largeur = $Gutter + $Pos + $Gutter;
  • $Hauteur = $Gutter + $HauteurMax + $Gutter;
  • // Création de l'image
  • $Image = ImageCreateTrueColor($Largeur,$Hauteur);
  • // Création des couleurs
  • $CoulFond = ImageColorAllocate($Image, $RougeFond, $VertFond, $BleuFond);
  • $CoulLettres = ImageColorAllocate($Image, $RougeLettres, $VertLettres, $BleuLettres);
  • $CoulCadre = ImageColorAllocate($Image, $RougeCadre, $VertCadre, $BleuCadre);
  • // Remplissage du fond
  • ImageFilledRectangle($Image, 0, 0, $Largeur-1, $Hauteur-1, $CoulFond);
  • // Traçage du cadre si nécessaire
  • if ($IsCadre) {ImageRectangle($Image, 0, 0, $Largeur-1, $Hauteur-1, $CoulCadre);}
  • // Ajout du texte
  • $Pos = $Gutter;
  • for ($i=0; $i<$NbLettres; $i++)
  • {
  • ImageTTFText($Image, $TaillePolice, $aDatas[$i][1], $Pos-$aDatas[$i][4], (($Hauteur - $aDatas[$i][3])/2)+$Gutter-$aDatas[$i][5], $CoulLettres, $Font, $Text[$i]);
  • $Pos = $Pos + $aDatas[$i][2];
  • }
  • // Affichage de l'image
  • ImageJpeg($Image,NULL,$Quality);
  • ImageDestroy($Image);
  • //================================ END of FILE =================================
  • ?>
<?php
//==============================================================================
//                          D E S C R I P T I O N
//==============================================================================
//|                                                                            |
//| FICHIER : CreateImageFromText.php                                          |
//|                                                                            |
//| OBJECTIF : écrit un texte sous une forme imagée et tordue paramétrable.    |
//|                                                                            |
//|       Réalisé par BlueMan (http://www.blueman.name/me_contacter.php)       |
//|                                                                            |
//==============================================================================
//
// ATTENTION : pour fonctionner, ce script nécessite :
//
//      la police TrueType "Seawawe Extended Keyset" : "Seawek.ttf"
//      qui doit être placée dans le même répertoire que ce script. 
//
// Les Paramètres sont CASE INSENSITIVE et leur ordre n'a aucune importance.
//
// Les Paramètres possibles en entrée sont :
//
//==============================================================================
//|                      |                                 |    OBLIGATOIRE    |
//|      PARAMÈTRE       |             ROLE                |         ou        |
//|                      |                                 | VALEUR PAR DÉFAUT |
//|============================================================================|
//| Text = Letexte       | Le texte à transformer en image |        Oui        |
//|----------------------------------------------------------------------------|
//| Size = n             | La taille de la police au sens  |         20        |
//|                      | windows (8, 10, 12 , 14, etc.)  |                   |
//|----------------------------------------------------------------------------|
//| Color = RRVVBB       | La couleur des lettres en Hexa  |   0000FF (bleu)   |
//|----------------------------------------------------------------------------|
//| MaxAngle = a         | Les caractères seront écrits    |                   |
//|                      | avec un angle exprimé en degré  |        20         |
//|                      | dans [-MaxAngle , +MAxAngle]    |                   |
//-----------------------------------------------------------------------------|
//| BGColor = RRVVBB     | La couleur de remplissage du    |  FFFFFF (blanc)   |
//|                      | fond en Hexa                    |                   |
//|----------------------------------------------------------------------------|
//| Border = true|false  | Avec ou sans cadre              |        true       |
//|----------------------------------------------------------------------------|
//| BorderColor = RRVVBB | La couleur du cadre en Hexa     |  000000 (noir)    |
//|----------------------------------------------------------------------------|
//| Gutter = g           | Le nombre de pixels de la       |                   |
//|                      | gouttière séparant le texte de  |         6         |
//|                      | la bordure.                     |                   |
//|----------------------------------------------------------------------------|
//| Quality = q          | Un nombre dans [0,100]          |                   |
//|                      | indiquant la qualité de         |        40         |
//|                      | l'image JPEG.                   |                   |
//------------------------------------------------------------------------------
//
//               Exemples de codes à placer dans votre source :
//               ----------------------------------------------
//
// Exemple 1 : echo "<IMG src='CreateImageFromText.php?Text=ABCDE'>";
//
// Exemple 2 : echo "<IMG src='CreateImageFromText.php?Cadre=false&Text=ABCDE&MaxAngle=12&Color=FF0000' align='absmiddle'>";
//
//                             Exemples vivants :
//                             ------------------
//
// Exemple vivant 1 : http://www.blueman.name/me_contacter.php
//
// Exemple vivant 2 : http://www.blueman.name/Telechargement.php
//
// Exemple vivant 3 : http://www.agiradesainthubert.ca/ContactFr.php
//
//------------------------------------------------------------------------------
//                      I M P L É M E N T A T I O N
//------------------------------------------------------------------------------

// Définition du Header : obligatoire et obligatoirement le premier elément envoyé
// au navigateur
header("Content-type: image/jpeg");

// On rend case insensitive, pour le développeur, le nom des paramètres,
// ceci afin de limiter les erreurs idiotes engendrant des pertes de temps.
// On les transforme tous en MAJUSCULES
if (IsSet($_GET)) $_GET = array_change_key_case($_GET, CASE_UPPER);

// Récupération ou non des paramétres
// Le Texte
if ( IsSet($_GET['TEXT'])) {$Text = $_GET['TEXT'];} else {$Text = "";}

// Calcul du nombre de lettres
$NbLettres = StrLen($Text);
if ($NbLettres == 0) Exit;

// La Taille de la police du texte
if ( IsSet($_GET['SIZE']) and ($_GET['SIZE'] > 0)) { $TaillePolice = $_GET['SIZE'];}
else {$TaillePolice = 20;}

// La couleur des lettres à écrire
if ( IsSet($_GET['COLOR']))
{
  $Couleur = $_GET['COLOR'];
  $RougeLettres=IntVal(SubStr($Couleur,0,2),16);
  $VertLettres=IntVal(SubStr($Couleur,2,2),16);
  $BleuLettres=IntVal(SubStr($Couleur,4,2),16);
}
else {$RougeLettres=0; $VertLettres=0; $BleuLettres=255;}

// Les caractères seront écrits avec un angle exprimé en degré dans [-MaxAngle , +MAxAngle]
if ( IsSet($_GET['MAXANGLE']) and ($_GET['MAXANGLE'] >= 0)) {$MaxAngle = $_GET['MAXANGLE'];}
else {$MaxAngle = 20;}

// La couleur de fond
if ( IsSet($_GET['BGCOLOR']))
{
  $Couleur = $_GET['BGCOLOR'];
  $RougeFond=IntVal(SubStr($Couleur,0,2),16);
  $VertFond=IntVal(SubStr($Couleur,2,2),16);
  $BleuFond=IntVal(SubStr($Couleur,4,2),16);
}
else {$RougeFond=255; $VertFond=255; $BleuFond=255;}

// L'utilisateur veut-il un cadre ?
// On a utilisé strtolower afin de rendre case insensitive l'écriture des
// booléens destinés au paramètre CADRE
if ( IsSet($_GET['BORDER'])) {$IsCadre = !(strtolower($_GET['BORDER']) == "false");}
else {$IsCadre = true;}

// La couleur du cadre
if ($IsCadre and IsSet($_GET['BORDERCOLOR']))
{
  $Couleur = $_GET['BORDERCOLOR'];
  $RougeCadre=IntVal(SubStr($Couleur,0,2),16);
  $VertCadre=IntVal(SubStr($Couleur,2,2),16);
  $BleuCadre=IntVal(SubStr($Couleur,4,2),16);
}
else {$RougeCadre=0; $VertCadre=0; $BleuCadre=0;}

// La gouttière
if ( IsSet($_GET['GUTTER']) and ($_GET['GUTTER'] > -1)) {$Gutter = $_GET['GUTTER'];}
else {$Gutter = 6;}

// La qualité
if ( IsSet($_GET['QUALITY']) and ($_GET['QUALITY'] > -1)) {$Quality = $_GET['QUALITY'];}
else {$Quality = 40;}

// Calcul de la taille de l'image
// Cette police est particulièrement bien adaptée à cette tâche
$Font = "Seawek.ttf"; // Nom complet : Seawave Extended Keyset (TrueType)
$Hauteur = $TaillePolice;
$Pos = $Gutter;
$HauteurMax = 0;
for ($i=0; $i<$NbLettres; $i++)
{
  $Angle = rand(-$MaxAngle,$MaxAngle);
  $InfoRect= ImageTTFBbox($TaillePolice, $Angle, $Font, $Text[$i]);
  
  $LargeurCar1 = $InfoRect[2]-$InfoRect[6];
  $LargeurCar2 = $InfoRect[4]-$InfoRect[0];
  if ($LargeurCar1 > $LargeurCar2) {$LargeurCar = $LargeurCar1;} else {$LargeurCar = $LargeurCar2;}
  
  $HauteurCar1 = $InfoRect[1]-$InfoRect[5];
  $HauteurCar2 = $InfoRect[3]-$InfoRect[7];
  if ($HauteurCar1 > $HauteurCar2) {$HauteurCar = $HauteurCar1;} else {$HauteurCar = $HauteurCar2;}

  if ($HauteurCar > $HauteurMax) {$HauteurMax=$HauteurCar;}
  
  if ($InfoRect[6] > $InfoRect[0]) {$OffsetX = $InfoRect[0];} else {$OffsetX = $InfoRect[6];}
  if ($InfoRect[7] > $InfoRect[5]) {$OffsetY = $InfoRect[5];} else {$OffsetY = $InfoRect[7];}
  
  $aDatas[] = array($Pos, $Angle, $LargeurCar, $HauteurCar, $OffsetX, $OffsetY);
  $Pos = $Pos + $LargeurCar;
}
$Largeur = $Gutter + $Pos + $Gutter;
$Hauteur = $Gutter + $HauteurMax + $Gutter;

// Création de l'image
$Image = ImageCreateTrueColor($Largeur,$Hauteur);

// Création des couleurs
$CoulFond = ImageColorAllocate($Image, $RougeFond, $VertFond, $BleuFond);
$CoulLettres = ImageColorAllocate($Image, $RougeLettres, $VertLettres, $BleuLettres);
$CoulCadre = ImageColorAllocate($Image, $RougeCadre, $VertCadre, $BleuCadre);

// Remplissage du fond
ImageFilledRectangle($Image, 0, 0, $Largeur-1, $Hauteur-1, $CoulFond);

// Traçage du cadre si nécessaire
if ($IsCadre) {ImageRectangle($Image, 0, 0, $Largeur-1, $Hauteur-1, $CoulCadre);}

// Ajout du texte
$Pos = $Gutter;
for ($i=0; $i<$NbLettres; $i++)
{
  ImageTTFText($Image, $TaillePolice, $aDatas[$i][1], $Pos-$aDatas[$i][4], (($Hauteur - $aDatas[$i][3])/2)+$Gutter-$aDatas[$i][5], $CoulLettres, $Font, $Text[$i]);
  $Pos = $Pos + $aDatas[$i][2];
}

// Affichage de l'image
ImageJpeg($Image,NULL,$Quality);
ImageDestroy($Image);
//================================ END of FILE =================================
?>

Conclusion

Voila une fonction puissante mais néanmoins facile à mettre enn oeuvre qui ravira tous les amateurs de sécurité.

Explorez bien les possibilités de la fonction en testant les nombreux paramètres !

Bonne utilisation,

BlueMan.
(http://www.blueman.name/me_contacter.php)
 

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 morpheus57 le 02/02/2008 10:21:16

Hello,

Juste une petite question :
Si je comprend bien pour mettre une image de mon adresse mail, je vais devoir mettre comme code echo "<img src='CreateImageFromText.php?Text=mail@phpcs.com'>";

Heu.... donc dans le source de ma page il y aura bien mon mail en clair non ?

signaler à un administrateur
Commentaire de bluemandfr le 02/02/2008 14:58:53

Mais non...

Tu peux écrire par exemple :

<?php
echo "<IMG src='FICHIERS/CreateImageFromText.php?Border=False&Text=$Email&BGColor=FFFFCC' align='absmiddle'>";?>

signaler à un administrateur
Commentaire de _klesk le 02/02/2008 15:49:22

Je suit le commentaire de morpheus57 :

si :
<?php
$email = 'moi@ici.fr';
echo "<IMG src='FICHIERS/CreateImageFromText.php?Border=False&Text=$email&BGColor=FFFFCC' align='absmiddle'>";
?>

Dans la source de la page on verra :
<IMG src='FICHIERS/CreateImageFromText.php?Border=False&Text=moi@ici.fr&BGColor=FFFFCC' align='absmiddle'>
non ?

Ps :
j'ecrirait plutot ca comme ca :
echo '<img src="FICHIERS/CreateImageFromText.php?Border=False&Text='.$email.'&BGColor=FFFFCC" align="absmiddle">';
Ps 2:
Le align="absmiddle" il doit exister mieux mais je ne sais plus quoi ^^

KlesK ;)

signaler à un administrateur
Commentaire de TheSin le 02/02/2008 17:20:07

Le but final c'est quoi ? De l'antispam ? Dans ce cas ce script ne sert à rien, puisque le paramètre textuel à affiché est dans le code HTML.
Du coup, bin les robots n'ont même pas besoin de déchiffrer l'image, puisque le texte à entrer est dans le code ;-).
Pour résoudre le problème => sessions (et pas cookies ^^)

signaler à un administrateur
Commentaire de morpheus57 le 03/02/2008 09:04:06 3/10

Bon donc c'est bien ce que je pensais....
En fait je pense que une des solutions à ton problème serait comme l'a justement dit TheSin, d'utiliser les session. En gros le principe serait de stocker l'adresse mail (ou le texte) dans la Session, afin de pouvoir appeler ton script sans le paramètre text.

signaler à un administrateur
Commentaire de Filoman12 le 04/02/2008 02:01:33 1/10

Excuses-moi, mais cette source est complètement inutile !

Il ne suffit pas d'afficher une image avec un captcha pour en tester la saisie :)

Je me demande a quoi ca sert de réinventer ce qui existe deja et qui fonctionne fort bien (et surtout bien sécurisé). Aller voir le captcha CRYPTOGRAPHP (http://www.phpcs.com/codes/CRYPTOGRAPHP-CAPTCHA-ANTISPAM_37117.aspx) ou directement sur le site www.cryptographp.com y a tout ce qui faut !

signaler à un administrateur
Commentaire de BaFM le 04/02/2008 19:46:00 1/10

Comme l'on dit les autres, cette source est inutile dans l'état.
D'une, il faut ajouter les sessions pour que le texte de vérification reste sur le serveur. De plus il faut que ce soit généré aléatoirement.
De deux, le code dans la description, c'est un peu loupé comme texte. L'avoir là, peut indiquer que tu ne sais pas expliquer comment fonctionne ton code.

Cordialement.

signaler à un administrateur
Commentaire de aedius le 29/08/2008 17:48:04 7/10

allons allons ...

il suffit juste de remplacer la ligne 86 :
if ( IsSet($_GET['TEXT'])) {$Text = $_GET['TEXT'];} else {$Text = "";}
par
if ( IsSet($_SESSION['TEXT'])) {$Text = $_SESSION['TEXT'];} else {$Text = "";}

que l'on défini au préalable dans le php ...
l'interêt de cette source : l'image en elle même, pas mal configurable et qui reste lisible pour d'autres utilisations ^^

signaler à un administrateur
Commentaire de coucou747 le 03/09/2008 17:11:32 1/10

dans tes exemples, le code se trouve dans l'image, donc euh... ca ne sert a rien, ta protexion n'est pas plus efficace qu'un truc qui demande combien font deux plus deux.

signaler à un administrateur
Commentaire de pysco68 le 03/09/2008 17:28:31 1/10

encore un problème d'informations à faire ne pas faire passer coté utilisateur..... encore une fois des sessions: http://www.phpsources.org/tutoriel-sessions.htm pour l'information...

signaler à un administrateur
Commentaire de nicomilville le 03/09/2008 17:57:00 1/10

franchement, j'ai du mal a croire que tu es expert en sécurité...

a++

PS : regarde le tuto de pysco, il ne peut que te faire du bien lol !

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

probleme imagecreate et imagesetpixel [ par Celtic_fr ] voila ce que j'obtient ^^, ce n'est pas une image, pourtant mon php_gd2 est activ&#233;.&#137;PNG  IHDRdd &#140;}&#199; PLTE&#255;&#255;&#255;&#255 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 PNG et transparence [ par BTAJV ] Bonjour tout le monde,Voila je suis en plein création d'un site crée qui servira a créer des signature pour un jeux video mais j'ai un probleme de tra Upload d'une image et création d'une miniature [ par plopiplop ] Salut à toi qui lit mon post,je requiert votre aide pour un petit problème que je n'arrive pas a résoudre,j'ai écrit un petit script qui me permet l'u extraire une image d'un champ blob [ par thiebaut35 ] Dans une base mysql, j'ai des jolies images que je souhaite afficher où je le veux sur des pages html.Ma base fonctionne bien je peux mettre supprimer récupérer le chemin complet d'un fichier [ par aminesv ] bonjour!!!je voudrais faire un formulaire qui permette d'inserer une image dans une base de données, pour cela il faut que l'utilisateur donne l'URL d mon image ne s'affiche pas en entier ! [ par thiebaut35 ] problème:dans ma base, j'ai des photos sous blob.je les upload et les affiche comme je veux, ça fonctionne bien, mais, mais parfois, certaines passent probleme de modification d'image [ par kahayat ] voila j'ai un pb lors de la  modification de l'image il me ramene le chemin de l'image au lieu de me ramené l'imagevoila mon code$recruteur = $_GET["i poids d'une image [ par whouu ] Salut a tous, qq'un pourrait me dire comment on retourne le poids d'une image, en fait j'ouvre une page ou j'ai 3 photos qui s'affichent parmi plusieu Afficher une image dans un BLOB [ par Fredbeginner ] Salut à tous,J'ai un souci sur mon site :J'ai une BDD MYSQL dans laquelle j'insère dans des tables des images dans des BLOB (ne lançons pas le débat e


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

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,530 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é.