Correction

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Correction

Re: Correction

par Cyrano » 10 oct. 2011, 15:43

Police de caractère introuvable, vérifie le chemin.

Et prend l'habitude d'utiliser les bouton [PHP] quand tu postes du code :non:

Re: Correction

par moogli » 10 oct. 2011, 15:29

Salut,

Met en commentaire le imagepng() et affiche l'image dans le navigateur tu devrais y voir le problème.


@+

Correction

par prog08 » 10 oct. 2011, 15:20

Quelle est erreur sur ce code
 car mon navigateur Firefox 7 me renvoi l'erreur suivante : impossible d'afficher l'image car elle contient des erreurs et moi je ne vois aucune erreur



<?php
/*
Author : prog08
Page captcha.php
Génère un captcha.
Quelques indications : (utiliser l'outil de recherche et
rechercher les mentions données)
Liste des fonctions :
--------------------------Aucune fonction
--------------------------

Liste des informations/erreurs :
--------------------------Aucune information/erreur
--------------------------*/
session_start();
header ("Content-type: image/png");
$image = imagecreate(320, 100);
$blanc = imagecolorallocate($image, 255, 255, 255);
$noir = imagecolorallocate($image, 0, 0, 0);
$gris = imagecolorallocate($image, 200,200,200);
$jaune = imagecolorallocate($image, 255, 255, 0);
$rouge = imagecolorallocate($image, 200, 39, 45);
$vert = imagecolorallocate($image, 45, 255, 39);
$cyan = imagecolorallocate($image, 0, 255, 255);
$magenta = imagecolorallocate($image, 200, 0, 200);
$orange = imagecolorallocate($image, 255, 160, 0);
$bleu = imagecolorallocate($image, 60, 75, 200);
$bleuclair = imagecolorallocate($image, 156, 227, 254);
$vertf = imagecolorallocate($image, 20, 140, 17);
/*$Anoir = imagecolorallocatealpha($image, 0, 0, 0, 80);
$Ajaune = imagecolorallocatealpha($image, 255, 255, 0, 80);
$Ablanc = imagecolorallocatealpha($image, 255, 255, 255, 80);
$Arouge = imagecolorallocatealpha($image, 200, 39, 45, 80);
$Avert = imagecolorallocatealpha($image, 45, 200, 39, 80);
$Acyan = imagecolorallocatealpha($image, 0, 255, 255, 80);
$Amagenta = imagecolorallocatealpha($image, 255, 0, 255, 80);
$Aorange = imagecolorallocatealpha($image, 255, 128, 0, 80);
$Ableu = imagecolorallocatealpha($image, 39, 45, 200, 80);
$Ableuclair = imagecolorallocatealpha($image, 156, 227, 254, 80);
$A2noir = imagecolorallocatealpha($image, 0, 0, 0, 25);
$A2jaune = imagecolorallocatealpha($image, 255, 255, 0, 25);
$A2blanc = imagecolorallocatealpha($image, 255, 255, 255, 25);
$A2rouge = imagecolorallocatealpha($image, 200, 39, 45, 25);
$A2vert = imagecolorallocatealpha($image, 45, 200, 39, 25);
$A2cyan = imagecolorallocatealpha($image, 0, 255, 255, 25);
$A2magenta = imagecolorallocatealpha($image, 255, 0, 255, 25);
$A2orange = imagecolorallocatealpha($image, 255, 128, 0, 25);
$A2bleu = imagecolorallocatealpha($image, 39, 45, 200, 25);
$A2bleuclair = imagecolorallocatealpha($image, 156, 227, 254,
25);*/

//Toutes les couleurs
$colors = Array($vert, $noir, $jaune, $blanc, $rouge, $cyan, $magenta, $orange, $bleu, $bleuclair, $gris, $vertf);
$Tcolors = count($colors);

/*$colors2 = Array($Avert, $Anoir, $Ajaune, $Ablanc, $Arouge,
$Acyan, $Amagenta, $Aorange, $Ableu, $Ableuclair);
$Tcolors2 = count($colors2);
$colors3 = Array($A2vert, $A2noir, $A2jaune, $A2blanc, $A2rouge,
$A2cyan, $A2magenta, $A2orange, $A2bleu, $A2bleuclair);
$Tcolors3 = count($colors3);*/

//couleurs autorisées pour les caractères
$Lcolors = Array($noir, $rouge, $magenta, $bleu, $vertf);
$TLcolors = count($Lcolors);
$polices = Array('baveuse3d'); //Pensez à en rajouter !!
$Tpolices = count($polices);
//définition des caractères autorisés.
$carac = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$Tcarac = strlen($carac);
//définition des lignes noires
$nb_lignes = mt_rand(3,7);
$i = 1;
while($i<=$nb_lignes)
{
 ImageLine($image, mt_rand(0,40), mt_rand(0,100), mt_rand(280,
320), mt_rand(0,100), $noir);
 $i++;
}
//définition des lignes colorées.
$nb_lignes = mt_rand(3,7);
$i = 1;
while($i<=$nb_lignes)
{
 ImageLine($image, mt_rand(0,40), mt_rand(0,100),
mt_rand(280,320), mt_rand(0,100),
$colors[mt_rand(0,$Tcolors-1)]);
 $i++;
}
//définition des ellipses
$nb_ellipses = mt_rand(1,6);
$i = 1;
while($i<= $nb_ellipses)
{
 ImageEllipse($image, mt_rand(0,320), mt_rand(0,100),
25+mt_rand(0,15), 25+mt_rand(0,15),
$colors[mt_rand(0,$Tcolors-1)]);
 $i++;
}
//définition des triangles
$nb_triangles = mt_rand(1,6);
$i = 1;
while($i<=$nb_triangles)
{
 $array = Array(mt_rand(0,300), mt_rand(0,100), mt_rand(0,300), mt_rand(0,100), mt_rand(0,300), mt_rand(0,100));
 ImagePolygon($image, $array, 3, $colors[ mt_rand(0 , $Tcolors-1) ] );
 $i++;
}
$aupifcolor = $Lcolors[mt_rand(0,$TLcolors-1)] ;   //la couleur des caractères
$ecart = 300/10+4 ;   //écart entre les caractères
$_SESSION['captcha'] = '';  //La voilà !! Enfin !!
$i = 0 ;
$j = 7 ;
while($i <= $j)
{
 $lettre = $carac[mt_rand(0, $Tcarac-1)]; //choix de lettre
 $_SESSION['captcha'] .= $lettre; //stockage
 $taille = mt_rand(35,45); //taille
 $angle = mt_rand(-35,35); //angle
 $y = mt_rand(55, 60); //ordonnée
 $police = $polices[mt_rand(0, $Tpolices-1)]; //police :p
 
imagettftext($image, $taille, $angle, $ecart*$i+15, $y,
$aupifcolor, 'polices/'.$police.'.ttf', $lettre);
 $i++;
}
imagepng($image); //On envoie et on prie :p
?>