IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

affichage image générée sous firefox


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 58
    Points
    58
    Par défaut affichage image générée sous firefox
    Hello
    Bon, ben un nouveau 'tit probleme : je génére des images avec la librairie gd, je sauvegarde les images en dur dans un dossier et doit réafficher mes images dans des div, sous IE tout va bien sous firefox pas moyen d'afficher l'image;
    Comme je sais que vous allez me le demander, j'ai bien mis le header en tout début de code (plus haut dans la page je peux pas !!!).En fait si j'affiche l'image créer par un drag and drop dans FF ça roule mais pas via le code; voici

    mapage.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <?php
    header ("Content-type: image/png");
     
    // Fonctions communes
    include 'include/fonctions_communes.php';
     
    //Cration des images dynamiques
    //-- Les dégradés
    //--Caption du formulaire
    $aImg =createGradient(150,25,2,array(48,137,48),array(102,204,51));
    imagepng($aImg,'images/Admin/greenGradient.png');
    	imagedestroy($aImg);
    ?>
     
    <link rel="stylesheet" href="styles/admin.css">
     
    <html>
    	<div class="captionAdmin" id="captionFormAddItem">
    	<div align="center">
    <strong><font color="#006633">Formulaire d_ajout de produits</font></strong></div>
    	</div>
    </html>
    admin.css
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    .captionAdmin{
    	border-style:solid;
    	border-width:1px;
    	position:absolute;
    	background-image:url(../images/Admin/greenGradient.png);
    	background-repeat:repeat-x;
    	width:696px;
    	height:25px;
    	left:195px;
    	top:21px;
    	z-index:6;
    }
    fonctions_communes.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
     
    <?php
     
    function createGradient($L,$H,$sens,$startColor, $endColor){
     
     
     //--
     	//sens : 1->horizontal, 2->vertical, 3->diagonal
    	$startColorR = $startColor[0];
      	$startColorV = $startColor[1];
       	$startColorB = $startColor[2];
     
    	$endColorR = $endColor[0];
      	$endColorV = $endColor[1];
       	$endColorB = $endColor[2];
     
    //---
     
    	$im=imagecreatetruecolor($L,$H);
    	$blanc=imagecolorallocate($im,255,255,255);
    switch ($sens)
    {
        case 1 : $t=$L; break;
        case 2 : $t=$H; break;
        case 3 : $t=$L+$H; break;
    }
    //on dessine une ligne verticale, horizontale ou diagonale pour chaque pixel entre 0 et $t
    for ($i=0;$i<$t;$i++)
    {
       $r = $startColorR + $i*($endColorR-$startColorR)/$t;
       $v = $startColorV + $i*($endColorV-$startColorV)/$t;
       $b = $startColorB + $i*($endColorB-$startColorB)/$t;
       $c=imagecolorallocate($im,$r,$v,$b);
       switch ($sens)
       {
           case 1 : imageline($im,$i,0,$i,$H,$c); break;
           case 2 : imageline($im,0,$i,$L,$i,$c); break;
           case 3 : imageline($im,max(0,($i-$H)),min($i,$H),min($i,$L),max(0,($i-$L)),$c); break;
       }
    }
     
     
    }
    ?>
    J'ai essayé differentes solutions (sortir mon appel de la page....) rien n'y fait pourtant en créant une image sans l'enregistrer mais en l'affichant directement ça marche, or je dois l'enregistré, en fait firefox n'interpréte pas l'image qu'il vien de créer via le code mais l'interpréte si on la lui balance directement, très etrange; l'erreur qu'il me retourne est :
    L'image “....mapage.php” ne peut être affichée car elle contient des erreurs.

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Je ferais plus confiance à FF qu'a IE, si FF te dit qu'il y a une erreur...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 58
    Points
    58
    Par défaut
    Citation Envoyé par blueice Voir le message
    Je ferais plus confiance à FF qu'a IE, si FF te dit qu'il y a une erreur...
    ..c'est qu'il plante alors que IE fait ce que je lui demande...Mais bon...Puisque tu lui fais confiance c'est que tu dois en connaitre tous les secrets; quelle solution préconise tu ?

  4. #4
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    à priori tu mélanges HTML et image, tu dis à ton navigateur que ce que tu renvoie c'est une image mais tu lui envoie du HTML.

    Je pense que si tu enlèves ce qui suit ca devrait marcher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header ("Content-type: image/png");

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 58
    Points
    58
    Par défaut
    Ah ben oui évidemment...au temps pour moi....par contre dans le cas ou je souhaiterais afficher l'image directement sans l'enregistrer cette ligne serait nécessaire on est bien d'accord ?

    Merci pour ce grand coup de main!!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Affichage image WMF sous firefox
    Par noakiss dans le forum ASP
    Réponses: 2
    Dernier message: 11/08/2008, 14h13
  2. affichage d'image impossible sous FireFox
    Par raimo dans le forum Général JavaScript
    Réponses: 33
    Dernier message: 29/05/2008, 17h29
  3. [CSS] [HTML] Problème affichage bandes noire sous FireFox
    Par bouchette63 dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 23/08/2006, 15h44
  4. Problème de chargement d'image dynamique sous firefox
    Par Tmex dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 08/03/2006, 11h24
  5. [HTML]alt / title pour les images, liens sous firefox
    Par cynferdd dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 27/10/2005, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo