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

PHP & Base de données Discussion :

[SQL] Récupérer un BLOB avec php


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut [SQL] Récupérer un BLOB avec php
    Bonjour,

    Je dispose d'un fichier pdf que je mets dans ma base sous forme de BLOB. La méthode employée est expliquée ici : http://helyos.developpez.com/lob/

    Maintenant, je voudrais récupérer mon BLOB sur mon site web afin de pouvoir l'afficher avec acrobat sur clic sur un lien mais je ne vois pas comment faire ....

    Merci

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    salut,
    moi j'ai crée un fichier affiche_fichier.php ou je renseigne l'header (pour toi un type PHP) et je fais un echo du contenu de mon BLOB! Tout simplement!

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut
    C'est ce que j'ai fait mais il ne m'affiche rien. Il faut dire que je passe par un web service. Enfin toujours est-il que je n'ai rien a l'affichage. Si tu as ton code sous la main, je suis bien preneur. Merci

    Autrement j'ai trouvé ceci que je vais fouiller :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     $connection = OCILogon ("login","password");
     $requete = "select img from image where cle=$num";
     $moncursor = OCIParse ($connection, $requete);
     $result=OCIExecute($moncursor);
     $result=OCIFetchinto($moncursor,$enreg);
     //header("Content-type: image/jpeg");
     print "$enreg[0]->load()";

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Oui, pour moi, ce que tu as trouvé est satisfaisant! Moi, ça fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    header("Content-Disposition:inline filename=".$nomfic."\n");
    header("content-type: application/pdf");
    echo $reponse[0]['REPONSCOU_0']; //ceci est le contenu BLOB de mon pdf
    Voilà!

  5. #5
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut
    Ok merci fucce, j'apprecie beaucoup ton aide. D'autant qu'apparemment tu as fait exactement ce que je suis en train de faire

    Juste une petite question, dans ton header, c'est quoi $nomfic ? C'est un nom que tu donnes pour ton pdf ?

    Edit : je viens de vérifier, je n'ai vraiment rien a l'affichage alors que j'ai (BLOB) en base

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    oui, en effet, $nomfic est le nom que je donne au fichier ouvert.

  7. #7
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut
    Je n'ai toujours rien a l'affichage. Je vais regarder si au niveau de l'appel a ma webmethod je récupère bien qq chose

  8. #8
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut
    Bon j'ai trouvé ce qui cloche, ma requete a un group by et un order by. Il parait que les données de type BLOB n'apprécient pas trop. Je résoud ce problème et j'essaie ta méthode fucce.

    Merci

    Edit : Bon le problème n'est toujours pas ça. Avec une requete bateau, ma webmethod n'affiche toujours rien dans le flux xml qui est renvoyé alors que le requêteur sql developper affiche (BLOB) dans la colonne correspondante.Du coup, je me demande si j'ai bien inséré mon pdf-BLOB

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Si ça peut t'aider, je te donne l'enregistrement d'un BLOB dans une base MySQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    	$image = file_get_contents('reponse.pdf'); //nom du fichier à enregistrer
    //on les passe en binaire
    	$data = unpack("H*hex",$image);
    	$query = 'DECLARE @ptr VARBINARY(16)
    	SELECT @ptr=TEXTPTR(REPONSCOU_0) FROM XCOURRIERE WHERE COUNUM_0=\''.$_POST['counum'].'\'
    	WRITETEXT XCOURRIERE.REPONSCOU_0 @ptr 0x'.$data['hex']; // XCOURRIERE nom de la table; COUNUM clé de la table
    	$test = $base->ExecuterRequete($query, $r);
    Bon courage!

Discussions similaires

  1. [MySQL] Récupérer valeur Spacial avec PHP-MySql
    Par saturne2008 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 09/03/2010, 23h30
  2. Lire et afficher des BLOB avec PHP
    Par CFGilles dans le forum SQL
    Réponses: 4
    Dernier message: 04/08/2008, 15h19
  3. Réponses: 2
    Dernier message: 30/06/2008, 10h52
  4. Réponses: 4
    Dernier message: 30/03/2007, 18h42
  5. [PDF] Récupérer texte pdf avec php
    Par nicerico dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 19/01/2007, 09h35

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