Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1583 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Juste un tout petit probleme avec GD

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Juste un tout petit probleme avec GD

n°845730
SatanKoRn
J'T'A'M !
Posté le 09-09-2004 à 10:58:38  profilanswer
 

dans ma page espacevip.php, j'insère l'image de cette manière : <img src="image.php?code=<?php echo $code; ?>"> où $code = 3dfo34 par exemple...
Mon fichier image.php :  

Code :
  1. <?
  2. function CreateImage($code){
  3. // Définition des dimensions
  4. $img = imagecreate(72, 25);
  5. // Défintion des couleurs
  6. $bgc = imagecolorallocate($img, 255, 255, 255);
  7. $black = imagecolorallocate($img, 0, 0, 0);
  8. $gris = imagecolorallocate($img, 128, 128, 128);
  9. // Remplissage du fond
  10. imagefilledrectangle($img, 0, 0, 72, 25, $bgc);
  11. // Ecriture du code (le premier 5 est la taille - de la police par défaut - la plus grande dans GD)
  12. // Ca évite d'avoir à installer FreeType, librairie qui ajoute le support des polices TrueType
  13. imagestring($img, 5, 12, 5, $code, $black);
  14. // Ajout d'un bruit
  15. for($i=0;$i<150;$i++) {
  16.      imagesetpixel($img, rand(0,72), rand(0,25), $gris);
  17. }
  18. // Crétion de l'entête
  19. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
  20. header("Last-Modified: " . gmdate("D, d M Y H:i:s" ) . " GMT" );
  21. header("Cache-Control: no-store, no-cache, must-revalidate" );
  22. header("Cache-Control: post-check=0, pre-check=0", FALSE);
  23. header("Pragma: no-cache" );
  24. // Création de l'image (qualité 15% : très médiocre)
  25. imagejpeg($img, '', 15);
  26. imagedestroy($img);
  27. }
  28. $code = $_GET['code'];
  29. CreateImage($code);
  30. ?>


Sur la page espacevip.php, je ne vois pas le code...
Merci d'avance pour vos réponses !


---------------
Matt
mood
Publicité
Posté le 09-09-2004 à 10:58:38  profilanswer
 

n°845741
SatanKoRn
J'T'A'M !
Posté le 09-09-2004 à 11:07:26  profilanswer
 

Quand je mets :

Code :
  1. imagestring($img, 5, 12, 5, "Salut !", $black);


ca marche tres bien...


---------------
Matt
n°845764
Lord II
PIB2000
Posté le 09-09-2004 à 11:25:55  profilanswer
 

L'erreur ne proivient pas de la transmission des paramètre, évtentuellement

n°845772
SatanKoRn
J'T'A'M !
Posté le 09-09-2004 à 11:29:44  profilanswer
 

comment ca ?


---------------
Matt
n°845777
Lord II
PIB2000
Posté le 09-09-2004 à 11:32:25  profilanswer
 

visiblement si tu utilise une chaine constante ca passe, alors l'erreur provient peut etre de la transmission à la page du code, bien que cela semble correcte.
Tu peux faire un echo du code avant l'appel à la fonction pour vérifier le contenu de la variable

n°845778
SatanKoRn
J'T'A'M !
Posté le 09-09-2004 à 11:34:01  profilanswer
 

avec l'appel de la fonction ?
dans la page espacevip.php, si je fais echo $code; ca marche. j'essaye donc avant l'appel de la fonction...


---------------
Matt
n°845780
SatanKoRn
J'T'A'M !
Posté le 09-09-2004 à 11:35:21  profilanswer
 

non je peux pas le faire, parce ca me renvoit des erreurs à cause des header...


---------------
Matt
n°845781
SatanKoRn
J'T'A'M !
Posté le 09-09-2004 à 11:37:29  profilanswer
 

ah! par contre, quand je vais directement à l'url de l'image en mettant un code au hasard genre : image.php?code=222222
ca marche... donc j'ai dû faire une erreur dans le code au moment où ça transmet le code ou je sais pas trop... :D


---------------
Matt
n°846598
SatanKoRn
J'T'A'M !
Posté le 10-09-2004 à 08:50:41  profilanswer
 

dans ma page espacevip.php, il y a le code suivant :  

Code :
  1. $code = substr(md5(time().time()), 0, 6);
  2. $_SESSION['code'] = $code;


Tout simple, c'est pour avoir un code à 6 caractères...
Plus loin dans la même page, j'ai :  

Code :
  1. <?
  2. echo '<form action="espacevip2.php" method="post">';
  3. echo '<P class="texte">Retapez le code suivant <img src="image.php?code='.$code.'"> ici : <input type="text" name="code" maxlength="4" size="4"> (Cela afin de plus sécuriser le système)</P>';
  4. echo '<P class="texte">Entrez ici votre code d\'accès : <input type="text" name="pass" maxlength="10" size="10"></P>';
  5. echo '<P class="texte"><input type="submit" name="ok" value="Validez !"></P>';
  6. echo '</form>';
  7. ?>


En gros, bin le type tape le code qui est sur l'image... et dans l'autre page, je vérifie que ce soit les mêmes. mais le problèmes c'est que le code n'apparaît pas sur l'image...
 
Quelqu'un aurait-il une idée ?


---------------
Matt
n°846631
jagstang
Pa Capona ಠ_ಠ
Posté le 10-09-2004 à 09:34:33  profilanswer
 

ne serait-ce pas un problème de cache ?

mood
Publicité
Posté le 10-09-2004 à 09:34:33  profilanswer
 

n°846637
SatanKoRn
J'T'A'M !
Posté le 10-09-2004 à 09:37:41  profilanswer
 

JagStang a écrit :

ne serait-ce pas un problème de cache ?


dans le fichier image.php, j'ai ces trois lignes :

Code :
  1. header("Cache-Control: no-store, no-cache, must-revalidate" ); 
  2. header("Cache-Control: post-check=0, pre-check=0", FALSE);
  3. header("Pragma: no-cache" );


ce serait à cause de ça ? ou tu parles d'autre chose ?  :whistle:


---------------
Matt
n°848976
SatanKoRn
J'T'A'M !
Posté le 13-09-2004 à 17:20:02  profilanswer
 

personne n'a d'idee ?


---------------
Matt
n°848977
simogeo
j'ai jamais tué de chats, ...
Posté le 13-09-2004 à 17:25:59  profilanswer
 

envoie l'url de ta page image.php


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°848980
SatanKoRn
J'T'A'M !
Posté le 13-09-2004 à 17:29:47  profilanswer
 
n°848984
simogeo
j'ai jamais tué de chats, ...
Posté le 13-09-2004 à 17:33:36  profilanswer
 

Alors 2 choses :
 
précises à ton navigateur qu'il sagit d'une image de type jpeg
 

Code :
  1. Header("Content-type: image/jpeg" );


 
edit : ca deviendra compatible
 
éventuellement revoie ta gestion du cache.
 
Lis ca :  
http://www.nexen.net/docs/php/anno [...] header.php
 
 
 
edit : devrait résoudre tes problèmes de cache
 
 


Message édité par simogeo le 13-09-2004 à 17:34:38

---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°848989
SatanKoRn
J'T'A'M !
Posté le 13-09-2004 à 17:36:58  profilanswer
 

Merci beaucoup! C'était bien le Header qui manquait !
:)


---------------
Matt

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Juste un tout petit probleme avec GD

 

Sujets relatifs
access excel problème de caractères retour à la ligne, etc...[Résolu - ADO] Problème de connexion à un serveur OLAP
Problème d'apostrophes[Java] Problème de layout.... taille des panels,...
Problème d'utilisation des ressources avec l'editeur de VC++.NET :'(Problème pour utiliser une police
probleme popup plus targetProblème de base en C++
problème d'exécution d'un jar 
Plus de sujets relatifs à : Juste un tout petit probleme avec GD


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR