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

Bibliothèques et frameworks PHP Discussion :

[GD] ImagePng qui ne m'affiche pas l'image [FAQ]


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Par défaut [GD] ImagePng qui ne m'affiche pas l'image
    Bonjour
    Je viens chercher de l'aide car je galère !

    J'ai fait une page php pour un site internet. Cette page me permet de créer un graphe en focntion de données entrées dans la base de données.

    Je fabrique mon image puis appelle la fonction ImagePng($img) afin de l'afficher. Quand j'ouvre ma page php au lieu de l'image j'ai ‰PNG  suivi de pleins de caracteres tout bizarres...

    Normalement si l'image ne se créait pas je devrais avoir "Erreur lors de la création de l'image"

    Si je fais ImagePng($img, $adr) l'image se créée bien et est enregistrée a l'adresse indiquée. Mais pour un site c'est pas l'idéal !

    Est ce que quelqu'un peut m'aider ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 46
    Par défaut
    Bonjour,
    Que retourne la fonction? un fichier .png?

    "Si je fais ImagePng($img, $adr) l'image se créée bien et est enregistrée a l'adresse indiquée. Mais pour un site c'est pas l'idéal !"
    Pas l'idéal pourquoi?


    Parce que si la fonction retourne un fichier .png l'appel de la fonction va bien générer le fichier qui sera crée sur le serveur. Il manquera toujours l'affichage alors il faut la mettre dans une balise html <img scr="" .....

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2003
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2003
    Messages : 217
    Par défaut
    Oui, il faut placer dans ton script un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Content-Type: image/jpeg');
    et appeler ce script dans une balise html img.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Par défaut
    Citation Envoyé par gaetanc15
    Parce que si la fonction retourne un fichier .png l'appel de la fonction va bien générer le fichier qui sera crée sur le serveur. Il manquera toujours l'affichage alors il faut la mettre dans une balise html <img scr="" .....
    Oui ca je l'ai fait, en local ca marche tres bien mais a distance ca foire, ca me renvois un erreur qui me dit que le fichier n'est pas accessible en ecriture. Et de toutes facons, je risque d'avoir beaucoup d'image donc je ne voudrais pas les enregistrer, mais seulement les afficher directement.

    Citation Envoyé par Sékiltoyai
    Oui, il faut placer dans ton script un
    Code :

    header('Content-Type: image/jpeg');

    et appeler ce script dans une balise html img.

    le header je l'avais mis ( mais dans mon cas : header('Content-Type: image/png'); ) mais il n'avait pas l'air de plaire a firefox, donc je l'ai enlevé.

    et quel script tu me dis d'appeler dans la balise img ?

  5. #5
    Membre chevronné Avatar de broumbroum
    Profil pro
    Inscrit en
    Août 2006
    Messages
    406
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 406
    Par défaut GD2 et le buffer de sortie
    ce ne sont que des directions qu'il faut relativiser... c'est mon expérience sur la librairie GD!
    • s'assurer de la sortie sur le script
    • comment? en enlevant tous appels à echo ou print() OU utiliser ob_start() et ses accolytes pour engorger l'output et tamporiser la sortie voire concentrer les données sur un seul appel à ob_flush(), c.f. php.net
    • assurer la disponibilité de la resource image et activer le debuggeur php avec error_reporting(E_ALL) dans le script concerné par GD



  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Par défaut
    Je suis réellement desolée... mais je ne comprend rien a ce que tu me dis. Pourtant je sens que ca doit pouvoir m'aider...

  7. #7
    Membre chevronné Avatar de broumbroum
    Profil pro
    Inscrit en
    Août 2006
    Messages
    406
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 406
    Par défaut
    c'est simple après pour la technique tu lies le script du buffer sur la balise image. par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="_image.php?file=monImage.png&type=png"/>
    qui prend source au script php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    header("Content-type: image/".$_GET['type']); switch($_GET['type']) {
    case "gif":
          imagegif(imagecreatefromgif($_GET['file']));   
    break;
    // etc.
    default: die("No support for this type!");

Discussions similaires

  1. [HTML]Image qui ne s'affiche pas sous firefox...
    Par OrangeBud dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/10/2004, 13h42
  2. pages qui ne s'affichent pas
    Par luck dans le forum ASP
    Réponses: 4
    Dernier message: 19/07/2004, 11h35
  3. [Applet] BorderLayout qui ne s'affiche pas
    Par Invité(e) dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 29/04/2004, 11h39
  4. [debutant][Tomcat]Images qui ne s'affichent pas
    Par omega dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 07/04/2004, 09h44
  5. [MFC] Ces fenêtres qui ne s'affichent pas..
    Par Davide dans le forum MFC
    Réponses: 3
    Dernier message: 19/11/2003, 11h30

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