[php] Mailinglist export

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • pelleke
  • Registratie: Maart 2003
  • Laatst online: 08-11-2024

pelleke

Aut viam inveniam aut faciam

Topicstarter
==PHP== (sorry, vergeten in de topictitle.)
Hallo!

Vraagje: Ik heb een mailinglist draaien, die mijn mails in een archief bewaart. Nu wil ik de e-mails (hierarchisch) template-based kunnen weergeven, d.m.v. PHP/MySQL.

Het enige wat ik kan gebruiken is een raw-data file met de mail gegevens. De eerste regels zien er als volgt uit. (het grootste deel is niet relevant.)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
From xxx@xxx.nl  Tue Dec  9 11:18:08 2003
Return-Path: <xxx@xxx.nl>
X-Original-To: xxx@sterrenkunde.nl
Delivered-To: xxx@sterrenkunde.nl
Received: by pluto.phys.uu.nl (Postfix, from userid 1044)
    id 0FEEBED94; Tue,  9 Dec 2003 11:18:08 +0100 (CET)
Received: from mail.SUPERWEBNET (unknown [62.21.240.8])
    by pluto.phys.uu.nl (Postfix) with ESMTP id 26C57ED61
    for <aft-list@sterrenkunde.nl>; Tue,  9 Dec 2003 11:18:07 +0100 (CET)
Received: from pellepc (unverified [81.59.128.194]) by mail.SUPERWEBNET
    (Vircom SMTPRS 2.1.258) with ESMTP id <B0002502995@mail.SUPERWEBNET>
    for <aft-list@sterrenkunde.nl>; Tue, 9 Dec 2003 11:21:39 +0100
To: <aft-list@sterrenkunde.nl>
Date: Tue, 9 Dec 2003 11:18:21 +0100
Message-ID: <000f01c3be3d$c5bebc80$0c00000a@pellepc>
MIME-Version: 1.0
Content-Type: multipart/related;
    boundary="----=_NextPart_000_0010_01C3BE46.27832480"
X-Priority: 3 (Normal)


De hele lijst is op te vragen op http://www.sterrenkunde.nl/jwg/amersfoort/aft-list.mbox en je kan zien dat er verschillende mails aan elkaar zijn geplakt.

Ik heb nu een script geschreven dat zoekt naar de tekst "Content type = " en als dat multipart is, gaat hij de sleutel opvragen. (boundary="----=_NextPart_000_0010_01C3BE46.27832480").

Die tekst van de sleutel zoek ik dan vaker op, en kijk dan wat daar "Content type" is. Zo krijg ik het voor elkaar om alle tekst bij elkaar te zetten, maar nu komt mijn probleem: Hoe pak je dat aan als een mail multipart is met een HTML-body?!? Daar kom ik dus niet uit. Wat ik uiteindelijk wil is:

1. De HTML netjes gedisplayed in een inline frame. Als de HTML in een string zit lukt dat wel.
2. De plaatjes moeten netjes op een plek komen. Hiervoor had ik het volgende bedacht:
code:
1
2
3
4
// geknipt uit de raw-data (HTML)
<body bgcolor=3Dwhite background=3D"cid:image001.gif@01C3BE46.27348F50" =
lang=3DNL 
link=3D"#33CC00" vlink=3D"#FF6633">

het gaat om de link cid:image001.gif@01C3BE46.27348F50
Dit wordt: http://mysite/image.php?name=image001.gif, waarin image.php het bestand nogmaals uitleest en de image eruit haalt.

Mijn manier van uitlezen lijkt me vreselijk omslachtig. Is het mogelijk om het met de imap_* functies te doen? (Die ondersteun ik namelijk ook.)

[ Voor 8% gewijzigd door pelleke op 09-12-2003 22:48 ]


Acties:
  • 0 Henk 'm!

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 12-09 01:23
1. De HTML netjes gedisplayed in een inline frame. Als de HTML in een string zit lukt dat wel.
2. De plaatjes moeten netjes op een plek komen. Hiervoor had ik het volgende bedacht:
Dit is dus wat je wilt hebben?? Lijkt mij niet zo moeilijk, zeker als je bekijkt dat je al weet hoe je de content-type kunt terug vinden. Op dezelfde manier kun je ook de image en de HTML tevoorschijn toveren. Zolang je een vast begin en eindpunt hebt is het heel makkelijk (strpos, substr, etc).

Acties:
  • 0 Henk 'm!

  • pelleke
  • Registratie: Maart 2003
  • Laatst online: 08-11-2024

pelleke

Aut viam inveniam aut faciam

Topicstarter
Dank je wel voor je reactie! Zo zou het moeten lukken.

Nog 1 vraagje: attachments. Die staan niet met een URL in de body, dus hoe kan ik zien dat die erin zitten?

Euh, ik wil zelf ook ff klooien, hoe kan ik zelf raw-data krijgen van een mail die ik zelf heb gemaakt?

Acties:
  • 0 Henk 'm!

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 12-09 01:23
pelleke schreef op 09 december 2003 @ 22:36:Euh, ik wil zelf ook ff klooien, hoe kan ik zelf raw-data krijgen van een mail die ik zelf heb gemaakt?
In Outlook Express (moet in elk mailprogramma kunnen, maar ik gebruik dit nu eenmaal :P): properties van een email opvragen -> tabblad details -> knop 'Message Source...'
Nog 1 vraagje: attachments. Die staan niet met een URL in de body, dus hoe kan ik zien dat die erin zitten?
Ik weet niet wat er allemaal in die list staat (link werkt niet helaas), maar ik denk dat je op zoek bent naar dit
code:
1
Content-disposition: attachment;

[ Voor 30% gewijzigd door Postman op 09-12-2003 22:46 ]


Acties:
  • 0 Henk 'm!

  • pelleke
  • Registratie: Maart 2003
  • Laatst online: 08-11-2024

pelleke

Aut viam inveniam aut faciam

Topicstarter
pelleke schreef op 09 december 2003 @ 22:23:
==PHP== (sorry, vergeten in de topictitle.)
Hallo!

Vraagje: Ik heb een mailinglist draaien, die mijn mails in een archief bewaart. Nu wil ik de e-mails (hierarchisch) template-based kunnen weergeven, d.m.v. PHP/MySQL.

Het enige wat ik kan gebruiken is een raw-data file met de mail gegevens. De eerste regels zien er als volgt uit. (het grootste deel is niet relevant.)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
From xxx@xxx.nl  Tue Dec  9 11:18:08 2003
Return-Path: <xxx@xxx.nl>
X-Original-To: xxx@sterrenkunde.nl
Delivered-To: xxx@sterrenkunde.nl
Received: by pluto.phys.uu.nl (Postfix, from userid 1044)
    id 0FEEBED94; Tue,  9 Dec 2003 11:18:08 +0100 (CET)
Received: from mail.SUPERWEBNET (unknown [62.21.240.8])
    by pluto.phys.uu.nl (Postfix) with ESMTP id 26C57ED61
    for <aft-list@sterrenkunde.nl>; Tue,  9 Dec 2003 11:18:07 +0100 (CET)
Received: from pellepc (unverified [81.59.128.194]) by mail.SUPERWEBNET
    (Vircom SMTPRS 2.1.258) with ESMTP id <B0002502995@mail.SUPERWEBNET>
    for <aft-list@sterrenkunde.nl>; Tue, 9 Dec 2003 11:21:39 +0100
To: <aft-list@sterrenkunde.nl>
Date: Tue, 9 Dec 2003 11:18:21 +0100
Message-ID: <000f01c3be3d$c5bebc80$0c00000a@pellepc>
MIME-Version: 1.0
Content-Type: multipart/related;
    boundary="----=_NextPart_000_0010_01C3BE46.27832480"
X-Priority: 3 (Normal)


De hele lijst is op te vragen op http://www.sterrenkunde.nl/jwg/amersfoort/aft-list.mbox.htm en je kan zien dat er verschillende mails aan elkaar zijn geplakt.

Ik heb nu een script geschreven dat zoekt naar de tekst "Content type = " en als dat multipart is, gaat hij de sleutel opvragen. (boundary="----=_NextPart_000_0010_01C3BE46.27832480").

Die tekst van de sleutel zoek ik dan vaker op, en kijk dan wat daar "Content type" is. Zo krijg ik het voor elkaar om alle tekst bij elkaar te zetten, maar nu komt mijn probleem: Hoe pak je dat aan als een mail multipart is met een HTML-body?!? Daar kom ik dus niet uit. Wat ik uiteindelijk wil is:

1. De HTML netjes gedisplayed in een inline frame. Als de HTML in een string zit lukt dat wel.
2. De plaatjes moeten netjes op een plek komen. Hiervoor had ik het volgende bedacht:
code:
1
2
3
4
// geknipt uit de raw-data (HTML)
<body bgcolor=3Dwhite background=3D"cid:image001.gif@01C3BE46.27348F50" =
lang=3DNL 
link=3D"#33CC00" vlink=3D"#FF6633">

het gaat om de link cid:image001.gif@01C3BE46.27348F50
Dit wordt: http://mysite/image.php?name=image001.gif, waarin image.php het bestand nogmaals uitleest en de image eruit haalt.

Mijn manier van uitlezen lijkt me vreselijk omslachtig. Is het mogelijk om het met de imap_* functies te doen? (Die ondersteun ik namelijk ook.)
---

DAMN, k wou hem editen.
Iig: Hier werkt de link wel.

[ Voor 5% gewijzigd door pelleke op 09-12-2003 22:52 ]