Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
JA
ANTWORTEN
16
ZUGRIFFE
1580
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
  1. #1
    rernanded ist offline Mitglied Gold
    Registriert seit
    Oct 2011
    Beiträge
    146
    Hi,
    wie kann ich die Ausgabe von Text/Plain aus dem mail_body filtern?
    Und wie kann ich das für den Text/HTML machen?
    Vllt gehts mit imap_fetchstructure() und / oder imap_fetchbody()? Nur wie?

    Moni

    PHP-Code:
    <?php

    $mailbox
    =imap_open("{MAILSERVER}INBOX","USER","PASSWORD"); 
     

    if (
    $mailbox


    $check=imap_check($mailbox); 

    $count_msg=$check->Nmsgs

    $count_new_msg=$check->Recent

    for (
    $i=1$i<=imap_num_msg($mailbox); 
    $i++) 
     

     
    $mail_body imap_body($mailbox,$i); 
     
    echo 
    '<b>Nachricht: </b><br>'
    echo 
    $mail_body."<br><br>";

    imap_delete($mailbox$i); 
     
    }
    imap_expunge($mailbox); 
    imap_close($mailbox); 

    ?>
    Geändert von rernanded (08.05.12 um 02:39 Uhr)
     

  2. #2
    Avatar von saftmeister
    saftmeister ist gerade online Nutze den Saft!
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    4.579
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  3. #3
    Avatar von einfach nur crack
    einfach nur crack ist offline mag Cookies & Kekse
    Registriert seit
    May 2007
    Ort
    ::1
    Beiträge
    2.427
    Ich habe vor langer Zeit mal ein Skript dafür geschrieben, was den Quelltext von E-Mails parsed und zerlegt. Dabei gehe ich da auch auf den Wechsel von Zeichensätzen ein und auf Base-64-Blöcke.
    Code PHP:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    
    class MailInterpreter
    {
      private static $charset  = '';
      private static $encoding = '';
      private static $boundary = array();
      private static $lines    = array();
      private static $blocks   = array();
      
      #
      # Interpretiert eine E-Mail
      #
      public static function interpret ($value)
      {
        # Nachricht in Zeilen teilen
        self::$lines = explode("\n", str_replace("\r", '', $value));
        # erster Datenblock besteht per Definition aus Kopfzeilen
        self::header();
        
        # Ausnahmebehandlung: "This is a multi-part message in MIME format."
        if ((trim(current(self::$lines)) === 'This is a multi-part message in MIME format.') && (self::$boundary !== array()))
        {
          next(self::$lines);
        }
        
        # verarbeitet die Zeilen
        while (list(, $line) = each(self::$lines))
        {
          # Grenze => Kopfzeilen
          if ($line === '--' . end(self::$boundary))
          {
            self::header();
            continue;
          }
          # Grenze (Ende) => entfernen
          elseif(trim($line) === '--' . end(self::$boundary) . '--')
          {
            array_pop(self::$boundary);
            
            if(end(self::$boundary) === false)
            {
              break;
            }
            continue;
          }
          
          # Klartext => Text
          self::body();
        }
        
        $blocks = self::$blocks;
        
        # alle klasseninternen Variablen zurücksetzen
        self::$charset  = '';
        self::$encoding = '';
        self::$boundary = array();
        self::$lines    = array();
        
        # Interpretierte Datenblöcke ausgeben
        return $blocks;
      }
      
      #
      # Verarbeitet Zeilen als Kopfzeilen
      #
      private static function header ()
      {
        # Zeilen als Kopfzeilen verarbeiten
        while (list(, $line) = each(self::$lines))
        {
          # Leerzeile => Ende der Kopfzeilen
          if (trim($line) === '')
          {
            if ($content !== null)
            {
              $specification[] = self::encoding_and_charset($content);
            }
            self::$blocks[] = array(1, $specification);
            return;
          }
          
          # gehört zur vorherigen Angabe
          if (($line[0] === ' ') || ($line[0] === "\t"))
          {
            $content .= ' ' . trim($line);
            continue;
          }
          
          # neue Angabe
          # -- aktuelle Angabe speichern
          # -- neue Angabe beginnen
          if ($content !== null)
          {
            $specification[] = self::encoding_and_charset($content);
          }
          
          $content = trim($line);
        }
      }
      
      #
      # Verarbeitet Zeilen als Text
      #
      private static function body ()
      {
        # internen Zeiger um einen Eintrag zuruecksetzen
        prev(self::$lines);
        
        # Zeilen als Text verarbeiten
        while (list(, $line) = each(self::$lines))
        {
          # wenn die Zeile eine Grenze darstellt, wird der Datenblock gespeichert
          if ((trim($line) === '--' . end(self::$boundary)) || (trim($line) === '--' . end(self::$boundary) . '--'))
          {
            # Datenblock speichern
            if (trim($content) !== '')
            {
              self::$blocks[] = array(2, self::charset(self::encoding($content)));
            }
            
            # internen Zeiger um einen Eintrag zurücksetzen
            prev(self::$lines);
            return;
          }
          
          # neuen Datenblock beginnen oder an bestehenden anhaengen
          if($content === null)
          {
            $content = $line;
          }
          else
          {
            $content .= "\n" . $line;
          }
        }
        
        # alle Zeilen wurden verarbeitet
        if (trim($content) !== '')
        {
          self::$blocks[] = array(2, self::charset(self::encoding($content)));
        }
      }
      
      #
      # Kodiert einen Text in Klartext
      #
      private static function encoding ($value)
      {
        if (self::$encoding === 'quoted-printable')
        {
          $value = quoted_printable_decode($value);
        }
        
        return $value;
      }
      
      #
      # Wandelt den Zeichensatz in UTF-8 um
      #
      private static function charset ($value)
      {
        return iconv(self::$charset, 'utf-8', $value);
      }
      
      #
      # Ermittelt die Kodierung und den Zeichensatz aus einer Kopfzeile
      #
      private static function encoding_and_charset ($value)
      {
        # Zeichensatz und Kodierung ermitteln
        if (substr($value, 0, 14) === 'Content-Type: ')
        {
          # Grenze ermitteln
          if (preg_match('/boundary=("(.*)"|.*)/', $value, $match) === 1)
          {
            if (isset($match[2]) === true)
            {
              self::$boundary[] = $match[2];
            }
            else
            {
              self::$boundary[] = $match[1];
            }
          }
          
          # Zeichensatz ermitteln
          if (preg_match('/charset=("(.*)"|.*)/', $value, $match) === 1)
          {
            if (isset($match[2]) === true)
            {
              self::$charset = $match[2];
            }
            else
            {
              self::$charset = $match[1];
            }
          }
        }
        # Zeile mit der Kodierungsangabe suchen
        elseif (substr($value, 0, 27) === 'Content-Transfer-Encoding: ')
        {
          self::$encoding = substr($value, 27);
        }
        
        return $value;
      }
    }
     
    Wir alle hier helfen gerne in unserer Freizeit weiter und versuchen Probleme gemeinsam zu lösen. Deshalb wäre es nett, wenn man das entsprechend mit einer positiven Bewertung oder einem Danke honoriert.

    Bei folgenden Sachen kann ich Dir übrigens helfen:
    PHP
    JavaScript
    Ruby
    CoffeeScript
    CSS
    – Webtechnologien
    – UNIX-Shell

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  4. #4
    rernanded ist offline Mitglied Gold
    Registriert seit
    Oct 2011
    Beiträge
    146
    Danke an einfach nur crack.
    Moni
     

  5. #5
    JesusFreak777 ist offline Mitglied Brokat
    Registriert seit
    Nov 2007
    Beiträge
    281
    Hallo,

    ich bin auch auf der suche eine Email richtig zu interpretieren,...

    Da ich leider noch nicht so gut mir Klassen umgehen kann, verstehe ich nicht ganz wie ich die Klasse einbinden kann!

    klar
    PHP-Code:
    include('MailInterpreter.class.php'); 
    aber mit welchen Befehl wende ich diese dann wo an?

    Vielen Dank für die Tipps!

    Gruß Baer
    Geändert von JesusFreak777 (11.05.12 um 11:34 Uhr)
     

  6. #6
    Avatar von Yaslaw
    Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    7.046
    Diese Klasse von crack hat alles statische Funktionen. Ergo einen einfachen Statischen Aufruf
    PHP-Code:
    //Hab aber keine Ahnung was bei dieser Klasse $value ist und was genau als $result zurückkommt. 
    //Die Dokumentaierung ist in dieser Hinsicht mangelnd.
    $result MailInterpreter::interpret($value); 
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements¨in PHP-Code kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit Code-Tags verwenden

  7. #7
    JesusFreak777 ist offline Mitglied Brokat
    Registriert seit
    Nov 2007
    Beiträge
    281
    Vielen Dank,

    leider macht die Klasse nicht das, was ich mir erhofft habe,... bzw. ich kann damit nicht umgehen!

    zu meinem Problem:
    ich mache einen IMAP abruf und erhalte über diesen befehl
    PHP-Code:
    $body imap_body($mbox,$overview->msgno);
    echo 
    "<pre>".$body."</pre>"
    folgendes:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    
    --_000_70DA0C594B96434684762CC7B68465410C1D9815BAERSERVERedvba_
    Content-Type: text/plain; charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
     
    Dieses mal mit etwas l=E4ngeren text um zu testen ob die zeile wieder abgeb=
    rochen wird! Ca. 69 zeichen muss ich in eine zeile bringen um zu wissen ob =
    es funktioniert! Jetzt sollte ich auf jeden fall etwas mehr zeichen haben, =
    ich teste jetzt noch ein paar html funktionen wie fettschrift und zentriert=
    !
     
     
    Test fett
     
    Test center
     
    --_000_70DA0C594B96434684762CC7B68465410C1D9815BAERSERVERedvba_
    Content-Type: text/html; charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
     
     
     
     
     
     
     
     
     
    Dieses mal mit etwas l=E4ngeren text um zu testen ob= die zeile wieder abgebrochen wird! Ca. 69 zeichen muss ich in eine zeile b= ringen um zu wissen ob es funktioniert! Jetzt sollte ich auf jeden fall etw= as mehr zeichen haben, ich teste jetzt noch ein paar html funktionen wie fettschrift und zentriert!
     
     
     
     
     
    Test fett
     
     
     
    Test ce= nter
     
     
     
     
    --_000_70DA0C594B96434684762CC7B68465410C1D9815BAERSERVERedvba_--
    oder
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    
    --_000_70DA0C594B96434684762CC7B68465410C1D87FDBAERSERVERedvba_
    Content-Type: text/plain; charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
     
    hallo
     
    --_000_70DA0C594B96434684762CC7B68465410C1D87FDBAERSERVERedvba_
    Content-Type: text/html; charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
     
     
     
     
     
     
     
     
     
    hallo
     
     
     
     
    --_000_70DA0C594B96434684762CC7B68465410C1D87FDBAERSERVERedvba_--
    auch
    Code :
    1
    2
    3
    4
    5
    6
    7
    
    kann mir bitte jemand die internet-adresse schicken? =3D) Ich w=C3=BCrde mi=
    ch sehr freuen... Schaf
     
     
    Um diese Email anzeigen zu k=C3=B6nnen, ben=C3=B6tigen Sie einen HTML f=C3=
    =A4higen Email=20
    Client!

    Leider habe ich keinen Plan wie ich damit umgehen soll damit das richtig Formatiert ist,... mit etwas filterarbeit habe ich zwar schon einiges herausfiltern können,... aber bei einer anderen Email (von einem Anderen Client) kommt wieder etwas ganz anderes an!

    diese Funktionen habe ich schon einzeln und in Kombination getestet,... leider ohne vernünftigen erfolg!
    PHP-Code:
        $body htmlentities($body);
        
    $body htmlspecialchars ($body);
        
    $body nl2br($body);
        
    $body imap_utf8($body);
        
    $body imap_qprint($body);
        
    $body str_replace("\n""<br>"$body);
        
    $body mb_convert_encoding($body'iso-8859-1'); 
    damit bin ich etwas weiter gekommen,...
    http://www.tutorials.de/php/237298-i...-ausgeben.html

    aber eine schöne Formatierte ausgabe in HTML oder nur TEXT,... wie es in der Email (wie bei den Maildiensten ja auch funktioniert) habe ich noch nicht hinbekommen :/

    Danke für die Hilfe schon im vorraus!

    Gruß
    Baer
    Geändert von JesusFreak777 (11.05.12 um 11:52 Uhr)
     

  8. #8
    Avatar von einfach nur crack
    einfach nur crack ist offline mag Cookies & Kekse
    Registriert seit
    May 2007
    Ort
    ::1
    Beiträge
    2.427
    @Yaslaw: Wenn du dir einmal den Quelltext ansiehst, der einer jeden E-Mail zugrunde liegt, also das, was eigentlich übermittelt wird, dann hast du genau das, was meine Methode als Argument haben will.

    @JesusFreak: Wenn du mal das, was du als Mail-Quelltext beigetragen hast, nimmst, und es meiner Methode übergibst, dann wirst du sehen, dass meine Klasse die Kodierung zu UTF-8 automatisch vor nimmt. Allerdings musste ich gerade feststellen, dass meine Klasse auf etwas nicht eingeht: und zwar, dass als erste Zeile bereits eine Boundary kommt, was eigentlich sein dürfte. Daher werde ich gleich einmal probieren dafür eine Änderung einzufügen.
    Geändert von einfach nur crack (11.05.12 um 12:59 Uhr)
     
    Wir alle hier helfen gerne in unserer Freizeit weiter und versuchen Probleme gemeinsam zu lösen. Deshalb wäre es nett, wenn man das entsprechend mit einer positiven Bewertung oder einem Danke honoriert.

    Bei folgenden Sachen kann ich Dir übrigens helfen:
    PHP
    JavaScript
    Ruby
    CoffeeScript
    CSS
    – Webtechnologien
    – UNIX-Shell

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  9. #9
    Avatar von Yaslaw
    Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    7.046
    Zitat Zitat von einfach nur crack Beitrag anzeigen
    @Yaslaw: Wenn du dir einmal den Quelltext ansiehst, der einer jeden E-Mail zugrunde liegt, also das, was eigentlich übermittelt wird, dann hast du genau das, was meine Methode als Argument haben will.
    Naja, da ich noch nie mit PHP und mails gearbeitet habe, weiss ich nicht was $value ist und was der Rückwert ist (ich meine ohne den Code zu lesen - nur anhand des Kommentars).
    Darum macht es Sinn in der Beschreibung der MEthode @param und @return ganz kurz zu erläutern
    zB:
    PHP-Code:
        /**
         * $_FILE auswerten
         * @param <Integer>        id bei einem Multiupload-Feld
         * @return <Array>         Alle ausgelesenen Werte als Array
         */
        
    protected function getFileProperties($id 0){
    ... 
    Somit war meine posting nur eine Anleitung wie man eine statische Klasse verwendet.....
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements¨in PHP-Code kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit Code-Tags verwenden

  10. #10
    JesusFreak777 ist offline Mitglied Brokat
    Registriert seit
    Nov 2007
    Beiträge
    281
    @crack wie genau binde ich die klasse ein?

    PHP-Code:
    include('MailInterpreter.class.php');  

    ... 
    imap empfang

    $body 
    imap_body($mbox,$overview->msgno);

    $result MailInterpreter::interpret($body);  

    echo 
    $result
    Code :
    1
    2
    3
    4
    5
    
    Notice: Undefined variable: content in /var/www/web1053/html/msg/MailInterpreter.class.php on line 93
    93:       if ($content !== null)
     
    Notice: Undefined variable: content in /var/www/web1053/html/msg/MailInterpreter.class.php on line 128
    128:       if($content === null)

    irgendwas mach ich falsch!?

    Danke für eure Hilfe

    Gruß Baer

    Nachtrag:
    natürlich nicht echo sondern print_r,... ändert aber nichts an den fehlern!
    Geändert von JesusFreak777 (11.05.12 um 13:30 Uhr)
     

  11. #11
    Avatar von einfach nur crack
    einfach nur crack ist offline mag Cookies & Kekse
    Registriert seit
    May 2007
    Ort
    ::1
    Beiträge
    2.427
    Okay, füge dazu einfach in der Methode "body" und der Methode "header" am Anfang folgendes ein:
    Code PHP:
    1
    
    $content = '';
    JesusFreak777 bedankt sich. 
    Wir alle hier helfen gerne in unserer Freizeit weiter und versuchen Probleme gemeinsam zu lösen. Deshalb wäre es nett, wenn man das entsprechend mit einer positiven Bewertung oder einem Danke honoriert.

    Bei folgenden Sachen kann ich Dir übrigens helfen:
    PHP
    JavaScript
    Ruby
    CoffeeScript
    CSS
    – Webtechnologien
    – UNIX-Shell

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  12. #12
    JesusFreak777 ist offline Mitglied Brokat
    Registriert seit
    Nov 2007
    Beiträge
    281
    hm,...

    Code :
    1
    2
    
    Notice: iconv() [function.iconv]: Detected an illegal character in input string in /var/www/web1053/html/msg/MailInterpreter.class.php on line 165
    165:    return iconv(self::$charset, 'utf-8', $value);

    Und was kann ich dann mit diesm array anstellen?
    Leider hab ich noch nie vorher was mit imap und diesen codierungen gemacht! Ich bekomme ein array zurück, das mir noch komplexer erscheint als der vorherige Wert!
     

  13. #13
    Avatar von einfach nur crack
    einfach nur crack ist offline mag Cookies & Kekse
    Registriert seit
    May 2007
    Ort
    ::1
    Beiträge
    2.427
    Kurz zum Aufbau von E-Mails: E-Mails bestehen aus zwei Dingen: aus Kopfzeilen und aus dem Körper. Beide sind voneinander durch eine Leerzeile getrennt. Wenn du jetzt jedoch einen Anhang verschicken willst, dann musst dieser in druckbaren Zeichen verschickt werden. Dazu wird der Dateiinhalt mit Base64 kodiert und Eigenschaften wie Dateigröße, Format und Name werden als Kopfzeilen verwendet. Solche Bereiche (also Paare aus Kopfzeile und Körper), die separat zum eigentlichen Inhalt einer E-Mail versendet werden, werden zwischen zwei Boundaries (Begrenzungen) als Körper des eigentlichen Inhalts der E-Mail verschickt. Somit kann der Client, der die E-Mail erhält, nun die E-Mail wieder so zusammen bauen, wie sie ursprünglich aussah.

    Was mein Skript macht: mein Skript sucht man Boundaries und Leerzeilen und teilt somit die E-Mail in Bereiche ein. Dabei teilt es Kopfzeilen vom eigentlichen Körper eines Bereiches und formatiert Inhalt, wenn es ein solcher ist, entsprechend der angegebenen Kodierung in UTF-8.

    E-Mail-Quelltext Beschreibung
    --_000_70DA0C594B96434684762CC7B68465410C1D9815BAERSERVERedvba_ Boundary (Beginn eines Bereiches)
    Content-Type: text/plain; charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
    Kopfzeilen
    Leerzeile
    Dieses mal mit etwas l=E4ngeren text um zu testen ob die zeile wieder abgeb=
    rochen wird! Ca. 69 zeichen muss ich in eine zeile bringen um zu wissen ob =
    es funktioniert! Jetzt sollte ich auf jeden fall etwas mehr zeichen haben, =
    ich teste jetzt noch ein paar html funktionen wie fettschrift und zentriert=
    !


    Test fett

    Test center
    Körper
    --_000_70DA0C594B96434684762CC7B68465410C1D9815BAERSERVERedvba_ Boundary (Ende des Bereiches)
    Content-Type: text/html; charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
    Kopfzeilen
    Leerzeile







    Dieses mal mit etwas l=E4ngeren text um zu testen ob= die zeile wieder abgebrochen wird! Ca. 69 zeichen muss ich in eine zeile b= ringen um zu wissen ob es funktioniert! Jetzt sollte ich auf jeden fall etw= as mehr zeichen haben, ich teste jetzt noch ein paar html funktionen wie fettschrift und zentriert!





    Test fett



    Test ce= nter
    Körper
    JesusFreak777 bedankt sich. 
    Wir alle hier helfen gerne in unserer Freizeit weiter und versuchen Probleme gemeinsam zu lösen. Deshalb wäre es nett, wenn man das entsprechend mit einer positiven Bewertung oder einem Danke honoriert.

    Bei folgenden Sachen kann ich Dir übrigens helfen:
    PHP
    JavaScript
    Ruby
    CoffeeScript
    CSS
    – Webtechnologien
    – UNIX-Shell

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  14. #14
    JesusFreak777 ist offline Mitglied Brokat
    Registriert seit
    Nov 2007
    Beiträge
    281
    WOW, vielen Dank für die gute erklärung,...

    again what learned

    ok,... soweit hab ich das jetzt,... wie kann ich jetzt weiter verfahren,...

    einerseits hab ich noch solche zeichen ('=E4', '= ') und anderer seits, hab ich noch solche emails:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    
    Array
    (
        [0] => Array
            (
                [0] => 1
                [1] => Array
                    (
                        [0] => 
                        [1] => This is a MIME-encapsulated message.
                    )
     
            )
     
        [1] => Array
            (
                [0] => 2
                [1] => 
    --A1745A05E2.1335374365/webbox111.irgendein-server.tld
    Content-Description: Notification
    Content-Type: text/plain; charset=us-ascii
     
    This is the mail system at host webbox111.irgendein-server.tld.
     
    I'm sorry to have to inform you that your message could not
    be delivered to one or more recipients. It's attached below.
     
    For further assistance, please send mail to postmaster.
     
    If you do so, please include this problem report. You can
    delete your own text from the attached returned message.
     
                       The mail system
     
    : host mx-ha02.web.de[213.365.27.10] said: 552-Requested
        mail action aborted: exceeded storage allocation 552-Quota exceeded. 552
        For explanation visit http://postmaster.web.de/error-messages (in reply to
        RCPT TO command)
     
    --A1745A05E2.1335374365/webbox111.irgendein-server.tld
    Content-Description: Delivery report
    Content-Type: message/delivery-status
     
    Reporting-MTA: dns; webbox111.irgendein-server.tld
    X-Postfix-Queue-ID: A1745A05E2
    X-Postfix-Sender: rfc822; mail@irgendeine-domain.de
    Arrival-Date: Wed, 25 Apr 2012 19:19:24 +0200 (CEST)
     
    Final-Recipient: rfc822; name.nachname@web.de
    Original-Recipient: rfc822;name.nachname@web.de
    Action: failed
    Status: 5.0.0
    Remote-MTA: dns; mx-ha02.web.de
    Diagnostic-Code: smtp; 552-Requested mail action aborted: exceeded storage
        allocation 552-Quota exceeded. 552 For explanation visit
        http://postmaster.web.de/error-messages
     
    --A1745A05E2.1335374365/webbox111.irgendein-server.tld
    Content-Description: Undelivered Message
    Content-Type: message/rfc822
    Content-Transfer-Encoding: 8bit
     
    Return-Path: 
    Received: from smtp.domain.tld (unknown [83.220.144.77])
        by webbox111.irgendein-server.tld (Postfix) with ESMTPA id A1745A05E2
        for ; Wed, 25 Apr 2012 19:19:24 +0200 (CEST)
    Date: Wed, 25 Apr 2012 19:19:24 +0200
    To: Julius Gracz 
    From: "MAIL - domain.de" 
    Reply-to: "MAIL - domain.de" 
    Subject: Neuer Blogeintrag von baer
    Message-ID: <29187703a4b88ba094539ed751f8365a@smtp.domain.tld>
    X-Priority: 3
    X-Mailer: PHPMailer 5.1 (phpmailer.sourceforge.net)
    MIME-Version: 1.0
    Content-Type: multipart/alternative;
        boundary="b1_29187703a4b88ba094539ed751f8365a"
     
     
    --b1_29187703a4b88ba094539ed751f8365a
    Content-Type: text/plain; charset = "UTF-8"
    Content-Transfer-Encoding: 8bit
     
    Um diese Email anzeigen zu k
            )
     
    )


    -> ursprünglich habe ich gehofft, das es fertige klassen dafür gibt! aber egal, was ich bisher versucht habe ich habe es nicht hinbekommen, emails die von web, outlook oder googlemail,... kommen in ner vernünftigen formatierung hinzubekommen,...

    was jetzt noch nicht wichtig ist, aber auch noch auf mich zukommt sind dann die anhänge! bilder die mit in die email eingebunden ist,...

    ?

    was ist mein nächster schritt?

    und der Fehler steht auch noch aus:

    Code :
    1
    2
    
    Notice: iconv() [function.iconv]: Detected an illegal character in input string in /var/www/web1053/html/msg/MailInterpreter.class.php on line 165
    165:    return iconv(self::$charset, 'utf-8', $value);
     

  15. #15
    Avatar von einfach nur crack
    einfach nur crack ist offline mag Cookies & Kekse
    Registriert seit
    May 2007
    Ort
    ::1
    Beiträge
    2.427
    Ich arbeite daran. Das Problem besteht aus zwei Teilen: laut Spezifikation darf die erste Zeile keine Leerzeile sein, ist sie bei dir aber. Außerdem ist dein erster Block ein Boundary-Block, was eigentlich auch nicht erlaubt ist.
     
    Wir alle hier helfen gerne in unserer Freizeit weiter und versuchen Probleme gemeinsam zu lösen. Deshalb wäre es nett, wenn man das entsprechend mit einer positiven Bewertung oder einem Danke honoriert.

    Bei folgenden Sachen kann ich Dir übrigens helfen:
    PHP
    JavaScript
    Ruby
    CoffeeScript
    CSS
    – Webtechnologien
    – UNIX-Shell

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. C++ Int zerlegen
    Von Shadow1911 im Forum C/C++
    Antworten: 23
    Letzter Beitrag: 08.01.13, 08:06
  2. String zerlegen in VBA...
    Von Mediax im Forum Visual Basic 6.0
    Antworten: 3
    Letzter Beitrag: 08.04.10, 09:54
  3. CSV - Zerlegen
    Von Raven280438 im Forum PHP
    Antworten: 5
    Letzter Beitrag: 04.12.07, 08:59
  4. C# INI zerlegen
    Von toko84 im Forum .NET Café
    Antworten: 5
    Letzter Beitrag: 16.05.07, 10:32
  5. VB.net--Array zerlegen
    Von toggenburg im Forum .NET Archiv
    Antworten: 7
    Letzter Beitrag: 26.04.05, 18:27