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

Langage PHP Discussion :

Enregistrer image à partir d'URL, ou bytea ?


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 40
    Points : 26
    Points
    26
    Par défaut Enregistrer image à partir d'URL, ou bytea ?
    Bonjour à tous,

    Voilà, je vous explique mon souci : j'ai un CRM en python sur un serveur fonctionnant avec une base PostGreSQL, et stockant ses images produits dans la base de données en bytea.

    Mon objectif est de copier ces images produits sur un CMS PHP-MySQL.

    Le premier serveur ne peut pas accèder à la BDD du second et le second ne peut pas exécuter du PG_*, donc j'ai un script PHP qui crée les données sur le serveur A et un script PHP qui les récupère sur le serveur B.

    Je n'arrive pas à récupérer et afficher l'image avec des fonctions PHP-PostGreSQL telles que pg_unescape_bytea, ni même à voir "l'intérieur" de cette donnée bytea via PgAdmin...

    Mais il y a un lien qui affiche cette image, et j'arrive à l'afficher sans problème dans un <img>, l'idéal serait que je puisse l'enregistrer en jpg sur le serveur via PHP. Mais je n'arrive pas non plus en PHP à récupérer cette image, car le lien est du style http://adresseip:port/web/binary/ima...d=image_medium, toutes les fonctions que je teste, comme file_get_contents, imagecreatefrom*, fopen... me retournent un 404...

    Mais sachant que ce lien, j'arrive à l'utiliser dans un <img>, je ne pourrais pas copier cette image et créer un fichier ? Avec du JS par exemple ?

    Donc, si quelqu'un sait comment je peux la récupérer en bytea pour la transférer à l'autre serveur, OU, à mon avis plus simple, récupérer cette image avec l'URL sans me retrouver avec cette 404 ?

    Je vous en remercie d'avance pour vos idées, et vous souhaite une bonne après-midi !

    Cordialement

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 40
    Points : 26
    Points
    26
    Par défaut
    Désolé pour l'auto-réponse, mais je me re-penche un peu plus sur le côté bytea.

    En fait, quand j'affiche ce que je sors de la base de données en PHP, j'essaie de l'afficher de trois façons différentes avec un header('content-type: image/jpeg') mais à chaque fois l'image n'est pas bonne, corrompue etc... Quand je regardes ce que j'ai dans cette variable, je vous mets le début :

    Juste en affichant le contenu, ça commence par :
    \x2f396a2f34414151536b5a4a5267414241514141415141424141442f2f67412b etc...

    avec pg_unescape_bytea, j'ai beaucoup plus de lignes :
    /9j/4AAQSkZJRgABAQAAAQABAAD//gA+Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBFRyB2NjIpLCBkZWZhdWx0IHF1YWxpdHkK/9sAQwAIBgYHBgUIBwcHCQkICg etc...

    avec pg_escape_bytea, une seule grande ligne :
    \x5c78326633393661326633343431343135313533366235613461353236373431343234313531 etc...

    J'ai du mal à comprendre ce "bytea" en fait... Il y a forcément une de ces trois images qui est bonne non ? Comment l'afficher/récupérer/enregistrer ??

    En vous remerciant par avance !

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 40
    Points : 26
    Points
    26
    Par défaut
    Auto-résolution !
    Désolé pour ce flood..

    C'était pg_unescape_bytea qui me sort en fait du base64... donc un bon base64_decode et tout marche !

    Au moins le souci est résolu :-P

    Bonne journée !

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

Discussions similaires

  1. [Débutant] Enregistrer image à partir d'une WebBrowser
    Par Enix13 dans le forum VB.NET
    Réponses: 5
    Dernier message: 13/11/2013, 15h45
  2. Affichage image à partir d'un url
    Par mariam2001 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 02/07/2007, 16h38
  3. Enregistrer une image depuis une url
    Par joeyinbox dans le forum Windows
    Réponses: 2
    Dernier message: 23/10/2006, 20h00
  4. Créer une image à partir d'une URL ?
    Par DrySs dans le forum Langage
    Réponses: 1
    Dernier message: 26/01/2006, 09h39
  5. enregistrer image sur disque avec URL
    Par meufeu dans le forum Langage
    Réponses: 8
    Dernier message: 26/10/2005, 12h55

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