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

  FORUM HardWare.fr
  Programmation
  PHP

  Header application PDF avec base de données POSTGRE

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Header application PDF avec base de données POSTGRE

n°1813691
jenny50
Posté le 19-11-2008 à 09:12:16  profilanswer
 

Bonjour à tous,  
 
Après plusieurs recherches sur le web, je ne trouve pas la réponse à ma question.
J'ai une base de données POSTGRE SQL avec une tablea "documents" les champs suivant cle(int) + titre(varchar) + fichier(lo)
 
Je souhaite ouvrir le fichier PDF via un lien de type <a href="file.php?doc=$fichier">cliquez ici</a>
 
mon lien fonctionne il m'ouvre bien la boite de dialogue 'ouvrir' / 'enregistrer' / 'annuler' --> il ouvre bien acrobat reader mais après erreur fichier introuvable.
 
Voyez-vous une solution?
Merci
Jennifer

mood
Publicité
Posté le 19-11-2008 à 09:12:16  profilanswer
 

n°1813738
Alisteroid
Posté le 19-11-2008 à 11:04:14  profilanswer
 

On peut voir le code en question?

n°1813742
jenny50
Posté le 19-11-2008 à 11:08:09  profilanswer
 

Ma page file.php

Code :
  1. header("Content-type: application/pdf" );
  2. header("Content-Disposition: attachment; filename=" . $_GET['titre']. '.pdf');


 
Ma page avec mon lien html

Code :
  1. <a href="adm_login_pil.php?cle=<?=$r_e['doc_cle']?>&oid=<?=$r_e['doc_file']?>&titre=<?=$r_e['doc_titre']?>cliquez ici</a>

n°1813750
Alisteroid
Posté le 19-11-2008 à 11:16:16  profilanswer
 

Et le contenu tu l'envoies comment?

n°1813753
jenny50
Posté le 19-11-2008 à 11:22:21  profilanswer
 

le contenu de quoi? du fichier?
si c'est le cas c'est un numéro doc_file qui est entré dans ma base de données.

n°1813758
Alisteroid
Posté le 19-11-2008 à 11:32:13  profilanswer
 

Oui mais tu fais bien un echo du contenu de ton champ "fichier" quelquepart?

n°1813780
jenny50
Posté le 19-11-2008 à 12:25:30  profilanswer
 

et bien non...

n°1813785
Alisteroid
Posté le 19-11-2008 à 12:33:23  profilanswer
 

Comment veux exporter ton pdf si fais pas d'echo du contenu après ton header dans ta page file.php.

 
Code :
  1. header("Content-type: application/pdf" );
  2. header("Content-Disposition: attachment; filename=" . $_GET['titre']. '.pdf');
  3.  
  4. //Récupération du contenu du fichier en base à partir de ton id_fichier passé en GET
  5. //=>echo du contenu


Normalement , dans ton lien, tu n'as pas à passer le nom du fichier, juste l'id et la clé (si ça te sert de vérification)
Le titre et le contenu tu les récupère une fois dans file.php à partir de l'id_fichier passé dans ton lien.


Message édité par Alisteroid le 19-11-2008 à 12:33:30
n°1813827
jenny50
Posté le 19-11-2008 à 13:45:25  profilanswer
 

ah excuse je ne comprenais pas ce que tu voulais me dire :  
voici le code :  
 

Code :
  1. $conn = g_connect();
  2. $oid = $_GET['oid'];
  3. pg_query ($conn, "begin" );
  4. $lo = pg_lo_open ( $conn, $oid, 'r' );
  5. $blob = pg_lo_read ($lo,10000000);
  6. pg_lo_close ($lo);
  7. header("Content-type: application/pdf" );
  8. header("Content-Disposition: attachment; filename=" . $_GET['titre']. '.pdf');
  9. echo $blob;

n°1813952
cesar666
CHO CACAO
Posté le 19-11-2008 à 18:07:28  profilanswer
 

tu veux generer quoi excatement en pdf?
car il y a un encodage particulier pour gener du .pdf.
Il y a des librairies pour, ex: tcpdf


---------------
VNR CAMENBERT
mood
Publicité
Posté le 19-11-2008 à 18:07:28  profilanswer
 

n°1814121
PunkRod
Digital Mohawk
Posté le 20-11-2008 à 09:01:54  profilanswer
 

cesar666 a écrit :

tu veux generer quoi excatement en pdf?
car il y a un encodage particulier pour gener du .pdf.
Il y a des librairies pour, ex: tcpdf


le pdf est déjà généré, mais il est archivé en base de données.

n°1814125
Profil sup​primé
Posté le 20-11-2008 à 09:14:23  answer
 

tu as essayé de le lire dans la page sans procéder par un enregistrement ? (en virant header("Content-Disposition: attachment; filename=" . $_GET['titre']. '.pdf');

n°1814388
jenny50
Posté le 20-11-2008 à 14:19:07  profilanswer
 

oui ça fonctionne si j'enlève
header("Content-Disposition: attachment; filename=" . $_GET['titre']. '.pdf');
 
pourquoi ça ne fonctionne pas en proposant le téléchargement alors?

n°1814394
Profil sup​primé
Posté le 20-11-2008 à 14:22:08  answer
 

on dirait que le fichier est mal téléchargé.
Essaie en proposant le téléchargement avec un filename statique fichier.pdf, par exemple, au lieu de $_GET['titre'].'.pdf'.
D'ailleurs, $_GET['titre'] est-il initialisé ?

n°1814414
jenny50
Posté le 20-11-2008 à 14:33:34  profilanswer
 

non ça fonctionne pas avec un filename statique
oui mon $_GET['titre'] est initialisé

n°1814428
Profil sup​primé
Posté le 20-11-2008 à 14:38:30  answer
 

et quand tu ne propose pas le téléchargement, et que tu enregistres via adobe alors çà fonctionne ?

n°1814430
jenny50
Posté le 20-11-2008 à 14:39:05  profilanswer
 

oui


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

  Header application PDF avec base de données POSTGRE

 

Sujets relatifs
Facebook : comment créer application pour noter&faire un classement?[Php/Mysql]Effacer ligne d'un tableau de données
exemple syntaxe dictionnaire des données oracleRecuperation de données dans un menu deroulant
Application avec base de DonnéesImport de données externes
Comment organiser sa base pour un site multilingues ?serialisation pour transfert d'un cube de données
Plus de sujets relatifs à : Header application PDF avec base de données POSTGRE


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