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 :

[FPDF] génération de fichiers PDF


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 14
    Points : 16
    Points
    16
    Par défaut [FPDF] génération de fichiers PDF
    Bonjour,

    Afin de produire des fichiers PDF, la librairie FPDF est utilisée et cela fonctionne bien dans la majorité des cas. Or, sur certains postes utilisateurs, le message d'erreur suivant survient :
    "Adobe Reader n'a pas pu ouvrir pa002861.fdf, car le type de fichier n'est pas pris en charge ou le fichier est endommagé (il a été envoyé en tant que pièce jointe et n'a pas été décodé correctement, par exemple)".

    Auriez-vous des idées, SVP ?

    Merci

    Laura

  2. #2
    Membre chevronné
    Avatar de Bidouille
    Inscrit en
    Mars 2003
    Messages
    1 275
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 1 275
    Points : 1 992
    Points
    1 992
    Par défaut
    Quels sont les différences entre les clients ?
    Rédacteur PHP / Delphi ADO / Novell / OpenOffice.org

    Inutile de m'envoyer vos questions par MP, je ne réponds que par le forum.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 14
    Points : 16
    Points
    16
    Par défaut RE : génération de fichiers PDF
    Bonjour,

    Au niveau des postes clients, il y a des postes MSIE 6.0 avec Acrobat reader 5.0 où cela fonctionne correctement et des postes avec les mêmes versions de MSIE et Acrobat reader et où cela ne fonctionne pas... Est-ce dû à un problème de paramètrage d'Acrobat Reader ? De plus, le parc est assez hétéroclite.

    Merci

  4. #4
    Futur Membre du Club
    Inscrit en
    Juin 2005
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    J'ai eu quelques problème avec cette librairie.
    Il y avait des problèmes de création sur le serveur, suivant les navigateurs et les machines.

    Pour que ca fonctionne toujours, je laissais le navigateur générer lui même le pdf, je ne le créais pas sur le serveur.

    Si c'est possible, il vaut mieux ne rien mettre comme paramètre dans le output() final, enfin, j'ai résolu mon problème comme ca. Si le client veut conserver le pdf, il le sauvegarde lui même.

    Harold

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 14
    Points : 16
    Points
    16
    Par défaut RE : génération de fichiers PDF
    Bonjour,

    Merci de cette réponse. Actuellement, c'est ce qui est fait : le PDF est créé en dynamique, il me semble que le problème pourrait venir de l'en-tête HTTP qui est passée avant la création du PDF
    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
     
    if (ereg('MSIE ([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)) {
            define('BROWSER_AGENT', 'IE');
    }
    $cfgExecTimeLimit = 0; // Maximum execution time in seconds (0 = no limit) default 300
    @set_time_limit($cfgExecTimeLimit); // Increase time limit for script execution
    $ext = 'pdf';
    $mime_type = 'application/pdf';
     
    // Send headers
    header('Content-Type: ' . $mime_type);
     
    // IE need specific headers
    if (BROWSER_AGENT == 'IE') {
      	header('Content-Disposition: inline; filename="'.$filename. '.' . $ext . '"');
        header('Expires: 0');
        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
        header('Pragma: public');
    } else {
        header('Content-Disposition: attachment; filename="'.$filename. '.' . $ext . '"');
        header('Expires: 0');
        header('Pragma: no-cache');
    }
    Est-ce utile ?

    Merci,

    Laura

  6. #6
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Salut,
    Apparemment l'auteur de FPDF préconise plutôt de sauvegarder le fichier sur le disque et de rediriger dessus:
    http://www.fpdf.org/phorum/read.php?f=1&i=19812&t=19812#19812

    Sinon une piste éventuelle : http://www.fpdf.org/phorum/read.php?f=1&i=11187&t=11187#11187

    Mais bon ça vaut ce que ça vaut.
    Les Cours et tutoriels JavaScript
    Penser à la recherche et au bouton

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 44
    Points : 55
    Points
    55
    Par défaut Re: génération de fichiers PDF
    Citation Envoyé par Laura
    "Adobe Reader n'a pas pu ouvrir pa002861.fdf, car le type de fichier n'est pas pris en charge ou le fichier est endommagé (il a été envoyé en tant que pièce jointe et n'a pas été décodé correctement, par exemple)"
    Le problème vient peut être de ton objet mailer qui te mets le PDF en pièce jointe. Si ne définit pas le bon mime-type à lapièce jointe, ça peux causer des erreurs...
    Je suppose que tu crée le PDF sur le serveur et que tu dis à ton objet de perndre ce fichier en pièce jointe...

    Personnelement, je propose toujours le fichier en téléchargement. En effet, les navigateur ne réagissent pas tous de la même façon si on leur donne un PDF, qui plus est dynamique.

  8. #8
    Membre confirmé Avatar de GregPeck
    Inscrit en
    Novembre 2005
    Messages
    530
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 530
    Points : 540
    Points
    540
    Par défaut
    Moi je fait ça d'une autre façon.

    Je générer mon fichier html et ensuite je le passe à la moulinette dans "htmldoc" (open source) qui transforme un fichier html en fichier pdf.

    Par contre ça nécessite d'avoir un accès à la machine qu'un serveur mutualisé ne permet pas...

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

Discussions similaires

  1. [FPDF] Créer un fichier PDF à partir d'un autre fichier PDF
    Par axel-erator dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 18/06/2006, 23h29
  2. [FPDF] ouvrir un fichier pdf existant
    Par norkius dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 12/06/2006, 15h15
  3. [FPDF] générer un fichier .pdf
    Par phpaide dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 06/06/2006, 16h28
  4. [FPDF] Génération de fichiers PDF avec PHP
    Par deY! dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 10/04/2006, 17h06
  5. [FPDF] créer un fichier PDF dans le répertoire courant
    Par patdez dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 09/10/2005, 15h37

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