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] Table() ne fonctionne pas dans fpdf 1.6


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut [FPDF] Table() ne fonctionne pas dans fpdf 1.6
    Salut tout le monde,

    Je viens d'installer la version 1.6 de fpdf.

    J'aimerais afficher le contenu d'une table mysql.

    Pour ça, j'utilise ce code :

    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
    <?php
    require('../fpdf.php');
     
    //Connexion a la base
    mysql_connect('localhost','root','mdp');
    mysql_select_db('pharma');
     
    $pdf=new FPDF();
    $pdf->Open();
    $pdf->AddPage();
     
    $sql = "SELECT inscrits_en.MATRICULE_ET, etudiants.NOM_ET, etudiants.PRENOM_ET,inscrits_en.NOTE FROM `inscrits_en` LEFT JOIN `etudiants` ON ( inscrits_en.MATRICULE_ET = etudiants.MATRICULE_ET ) WHERE MNEMONIC = 'CHIM-J-101' AND TYPE_DE_COURS = 'TH' AND CATEGORIE = 'CI' ORDER BY NOM_ET, PRENOM_ET";
     
    //Premier tableau : imprime toutes les colonnes de la requete
    $pdf->Table($sql);
     
     
    $pdf->Output();?>
    Quand j'exécute, il me donne cette erreur :

    Fatal error: Call to undefined method FPDF::Table() in C:\wamp\www\PDF\FPDF16\Impression.php on line 15
    qui correspond à cette ligne de code :

    Sauriez-vous me dire quel est l'équivalent de Table (version 1.53 de fpdf) dans la version 1.6 de fpdf ?

    Merci d'avance.

    beegees

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    table() n'existe pas dans fpdf, meme en 1.53
    tu as du trouvé ca dans une extension de fpdf.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par sabotage Voir le message
    table() n'existe pas dans fpdf, meme en 1.53
    tu as du trouvé ca dans une extension de fpdf.
    Salut Sabotage,

    Merci pour ton dévouement et ta patience.

    Je viens avec une bonne nouvelle, j'ai lu attentivement la FAQ de fpdf et je suis tombé sur cette information :

    3. J'essaie de générer un PDF et IE m'affiche une page blanche. Que se passe-t-il ?
    Tout d'abord, vérifiez que vous n'envoyez rien au navigateur après le PDF (même pas un espace ou un retour-chariot). Vous pouvez mettre un exit juste après l'appel à la méthode Output() pour en être sûr. Si ce n'est pas ça, c'est que vous êtes victime du syndrome de la "page blanche". IE utilisé en conjonction avec le plug-in Acrobat souffre de nombreux bugs. Pour éviter ces problèmes de manière fiable, il existe deux principales techniques :

    - Désactiver le plug-in et utiliser Acrobat comme application externe. Pour cela, lancez Acrobat, allez dans le menu Edition, Préférences, Internet, puis désactivez l'option "Afficher dans le navigateur". Puis, lorsque vous récupérez un PDF dans IE, ce dernier affiche la boîte "Ouvrir ce fichier" ou "Enregistrer ce fichier". Décochez la case "Toujours demander avant d'ouvrir ce type de fichier" et choisissez Ouvrir. Dorénavant les PDF s'ouvriront automatiquement dans une fenêtre Acrobat indépendante.
    L'inconvénient de la méthode est qu'il faut toucher à la configuration du poste client, ce qu'on peut faire en intranet mais pas pour Internet.

    - Utiliser une technique de redirection. Le principe consiste à générer le PDF dans un fichier temporaire sur le serveur et à rediriger le client dessus. Par exemple, à la fin du script, on peut mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    //Détermination d'un nom de fichier temporaire dans le répertoire courant
    $file = basename(tempnam('.', 'tmp'));
    rename($file, $file.'.pdf');
    $file .= '.pdf';
    //Sauvegarde du PDF dans le fichier
    $pdf->Output($file, 'F');
    //Redirection
    header('Location: '.$file);
    Ce n'était pas tout à fait mon problème (IE ne trouvait pas la page) mais j'ai quand même essayé et ça fonctionne.

    J'espère que ça aidera quelqu'un.

    @+

    Beegees

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

Discussions similaires

  1. [AC-2010] Vérification de mot de passe dans une table ne fonctionne pas
    Par toumack dans le forum VBA Access
    Réponses: 1
    Dernier message: 15/08/2011, 20h50
  2. padding dans un table ne fonctionne pas sur IE
    Par J0r_x dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 05/03/2007, 11h15
  3. Réponses: 3
    Dernier message: 26/01/2006, 13h11
  4. La fonction CurrentDb() ne fonctionne pas dans une requête
    Par Sébastien Le Goyet dans le forum Access
    Réponses: 8
    Dernier message: 24/11/2005, 17h46
  5. Réponses: 1
    Dernier message: 27/10/2005, 21h48

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