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 :

affichage d'un email en php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 35
    Points : 24
    Points
    24
    Par défaut affichage d'un email en php
    Bonjour,
    Je me remet à un projet un peu abandonné depuis quelque temps qui consiste à affiché le contenu d'une boite mail en php.
    Je comprend bien comment se connecter à une boite mail et selectionner un message. C'est pour son affichage en html que je commence à serieusement bloquer, d'autant qu'aucun tuto complet sur se sujet semble exister à ce propos.
    Voici une page http://www.lolalilo.com/gg/ ou j'utilise imap_fetchstructure pour lister le contenu d'un mail qui contient une image (l'image est integrer en data url, https://en.wikipedia.org/wiki/Data_URI_scheme).

    Je ne comprend pas très bien comment faire pour à partir de cet objet, afficher le contenu du mail correctement en html.

    Merci de m'aiguiller

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    On est d'accord que tu possèdes le fichier : 1.4_pablo_picasso_portrait_de_nusch_eluard_ppic0107.png

    Si oui, dans ce cas il suffit de l'afficher dans une balise image :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    <?php
    //je part du principe que l'objet est instancier dans la variable $mail
    ?>
     <img src="<?php $mail->parts[1]->parameters[0]->value ?>">

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 35
    Points : 24
    Points
    24
    Par défaut
    non on est pas tout à fait d'accord, l'image s'appelle bien 1.4_pablo_picasso_portrait_de_nusch_eluard_ppic0107.png
    Mais le mail est envoyé depuis un gmail, qui convertit les images en data url pour pouvoir les envoyer sans les uploder sur un serveur j'imagine.
    mais je ne comprend pas ou se trouvent ces data dans l'objets?

    J'ai fait le test sur la meme page de ta proposition toujours ici http://www.lolalilo.com/gg/
    et à la suite je donne le résultat du imap_body() du mail en question, ou il semble bien que ces data y soient ...

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    regardez la fonction imap_fetchbody il y a un exemple de code qui récupère une image dans un e-mail :
    http://php.net/manual/fr/function.im...body.php#43405

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 35
    Points : 24
    Points
    24
    Par défaut
    franchement vous auriez pas quelque chose d'un peu mieux, parce que si je m'adresse à se forum c'est que je n'ai pas trouvé quelque chose d'assez claire dans la doc officielle ou ailleurs.
    L'exemple que tu m'indique est franchement ultra chelou, c'est plein d'erreurs et de trucs pas très claire, et il date de 12 ans en arrière...

    Je suis assez étonné que personne ici (qui me semble l'un des forum francophone les plus sérieux) ne se soit jamais posé les même questions que moi.

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    Il me semble que vous aviez mis le code de l'image.

    Il suffit donc de le remplacer dans l'exemple suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
    AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
    9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot" />

  7. #7
    Membre à l'essai
    Inscrit en
    Mars 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 35
    Points : 24
    Points
    24
    Par défaut
    oui je l'avais mis, (je viens de le remettre), mais il s'agissait de la fonction imap_body() sur tout le mail, et je ne comprend pas très bien comment bien décomposé la structure du mail pour ensuite l'afficher comme du html.

    Ce que je comprend c'est qu'un mail a une structure bien particulière qui permet d'envoyer les differents elements du mail dans differentes parties encoder selon ce qu'elles contiennent (le sujet , le texte, une image, les piece jointes ...) imap_fetchstructure permet apparement de recuperer chacune de ses partie en objets avec tout les parametres et infos les concernants.

    En gros je n'arrive pas à faire le lien entre les fonctions imap_fetchstructure et imap_body.

  8. #8
    Membre à l'essai
    Inscrit en
    Mars 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 35
    Points : 24
    Points
    24
    Par défaut
    j'ai réussi, yeah http://www.lolalilo.com/gg/
    Mais je ne comprend pas bien un truc, j'utilise la fonction imap_fetchbody() pour afficher cette image, et je ne comprend pas pourquoi il s'agit dans se mail de la section 2 ?
    Ou trouve t'on le numero de section ?

  9. #9
    Membre à l'essai
    Inscrit en
    Mars 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 35
    Points : 24
    Points
    24
    Par défaut
    apparement il n'y a que moi ici qui s'interresse à ces fonctions imap ...

Discussions similaires

  1. affichage d'image dans site php
    Par eurykane dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 21
    Dernier message: 08/07/2006, 17h22
  2. [Mail] Comment envoyer un beau email en php
    Par Alain15 dans le forum Langage
    Réponses: 11
    Dernier message: 30/06/2006, 15h11
  3. [Mail] Envoi email avec php
    Par laymounos dans le forum Langage
    Réponses: 8
    Dernier message: 01/06/2006, 14h31
  4. [SQL-Server] Affichage des erreurs mssql en php
    Par Laure13 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 30/05/2006, 12h05
  5. [IMAP] ouvrir une boite d'emails en php
    Par jadoo dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 03/04/2006, 22h11

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