Insertion et consultation d'un document PDF dans la base des données Mysql

khoubaibma Messages postés 11 Date d'inscription mercredi 7 novembre 2007 Statut Membre Dernière intervention 17 janvier 2010 - 11 juin 2008 à 17:24
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 - 8 oct. 2008 à 11:55
Bonjour,
J'ai inseré un pdf dans la base càd  j'ai inseré son chemin d'accès.
Mais j'ai un problème de le consulter à partir de la base.
Est ce que c'est possible de le mettre sous le serveur Appache et comment je fait pour la consultation.
s'il y a une autre solution laquelle.
j'utilise Easyphp1.8
S'il vous plaît aidez moi j'ai besoin d'aide et merci.

6 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
11 juin 2008 à 18:46
Salut,

Il te suffit de récupérer le contenu dans la base de données (une simple requête SELECT). Tu le stockes ainsi dans une variable (mysqm_fetch_assoc() et autres fonctions du même genre).
Ensuite, il te suffit de le renvoyer vers le navigateur, en spécifiant les bons entêtes HTTP :
header('Content-type: application/pdf');

Cette ligne précise au navigateur que le contenu qui suit est un PDF. C'est alors le client qui gère ce qu'il en fait (affichage direct avec un plugin pour le navigateur, affichage dans une application externe, téléchargement sur le disque dur).
Si tu veux forcer le téléchargement, il faut utiliser cette ligne à la place :
header('Content-type: application/force-download');

Ensuite, un simple echo pour envoyer le contenu du fichier PDF.

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
0
fatimadouimy Messages postés 7 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 17 octobre 2008
7 oct. 2008 à 19:12
faty

merci bien pr ta reponse neigedhiver elle m'interesse bcp mais est ce que tu px m'expliquer encore ca "en spécifiant les bons entêtes HTTP :" je ss debutante en php et je sé pas de koi tu parle merciiiiiiiiiiii
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
8 oct. 2008 à 09:19
Bonjour,

Comme je le disais, en utilisant les fonctions que j'ai indiquées.

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
0
fatimadouimy Messages postés 7 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 17 octobre 2008
8 oct. 2008 à 10:07
faty

est ce que tu peux me donner un exemple de code STP

et merci pour ta reponse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fatimadouimy Messages postés 7 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 17 octobre 2008
8 oct. 2008 à 10:18
faty

bon je vais t'expliquer de koi s'agit t'il j'ai table produit dans ma base et chaque produit a une brochure PDF.
j'ai créé un champ PDF de Type LONGBLOB.et voila mon code :
<?
header('Content-type: application/force-download');
require_once('connection.php');
require_once('execrequete.php');
$cnx=connexion();
$requete1='select * from scanners ';
$exec1= ExecRequete($requete1,$cnx);
$count=mysql_num_rows($exec1);



 while ($ligne=mysql_fetch_assoc($exec1)){





echo '<tr>';
        echo '<td >'.$ligne["scanner"].'</td>';
        echo '<td >'.$ligne["Mode"].'</td>';
  echo '<td >'.$ligne["Numerisation"].'</td>';
        echo '<td >'.$ligne["Vitesse"].'</td>';
 echo '<td >'.$ligne["Chargeur"].'</td>';
        echo '<td >'.$ligne["Volume"].'</td>';
  echo '<td >'.$ligne["Interface"].'</td>';
        echo '<td > ['.$ligne[ ]</td>';
      echo'</tr>';
    
   }



?>

ce que je veux c'est ke dans ma page .php dans la  colonne PDF ou je vais inserer mon pdf j'aurais une petite icone pdf et lorsque je click le pdf se charge.
j'espere bien ke tu ariveras a me comprendre.

je ss vraiment trés interessé par ca.
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
8 oct. 2008 à 11:55
Moi je comprends bien ce que tu veux, mais c'est toi qui ne comprends pas comment ça marche.

Ton fichier PDF étant enregistré dans ta base de données, tu dois passer par un script pour l'afficher. Jusque là, tout le monde est d'accord.
Par contre, il faut différencier le script qui affiche la page sur laquelle figure l'icone avec le lien pour télécharger, et le script qui va effectivement aller chercher le fichier PDF dans la base de données et le renvoyer au navigateur.
Un script PHP ne peut pas à la fois afficher du texte, du PDF, une image, etc.
C'est soit l'un, soit l'autre.
Ca peut être le même script, en réalité, mais il ne peut faire qu'une seule chose à la fois, renvoyer un seul type de données à la fois.

Donc d'abord, tu affiches du HTML.
Le lien sur l'icone PDF doit renvoyer vers le script qui va aller chercher le contenu du fichier PDF dans la base de données.
C'est ce script qui enverra les headers correspondants, c'est à dire :
header('Content-type: application/pdf');

pour laisser le navigateur gérer la manière dont le fichier est traité par l'utilisateur (affiché dans un plugin, téléchargé...)
Ou bien :
header('Content-type: application/force-download');

pour forcer le téléchargement du fichier.

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
0
Rejoignez-nous