Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] =?UTF-8?q?Neue_Antwort_im_Thema_=27Anh=C3=A4nge_aus_Mail _per_Link_oder_au

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] =?UTF-8?q?Neue_Antwort_im_Thema_=27Anh=C3=A4nge_aus_Mail _per_Link_oder_au

    Hi nochmal...

    Will ja niemanden auf den #### gehen, aber ich hätte da doch noch eine Frage meinen WebMAiler betreffend.

    In dem WebMailer-Test, den ich momentan schreibe, zeige ich noch jede Nachricht an, egal welche Mailbox jene zugeteilt werden soll.
    Oben wird das Maildatum, der Absender, der Empfänger u.ä. angezeigt (zur zuordnung in die Datenbank). Bis jetzt haben von allen Freemailern die Betreffzeilen ein wunderbares aussehen gehabt - und nun kommt webmaster2008@php.de mit einer UTF8 kodierten Betreffzeile, die ich einfach nicht normal angezeigt bekomme.

    Folgender string:
    PHP-Code:
    =?UTF-8?q?Neue_Antwort_im_Thema_=27Anh=C3=A4nge_aus_Mail_per_Link_oder_auf_HDD=3F!=27 
    Folgendes habe ich bis jetzt gemacht:
    PHP-Code:
    foreach($POfov as $fov)
     {
      
    $MesUID=$fov->uid;
      
    $MesSub=imap_utf8($fov->subject);
     }
    //bzw.
    foreach($POfov as $fov)
     {
      
    $MesUID=$fov->uid;
      
    $MesSub=utf8_decode($fov->subject);
     }
    //POfov ist das Array welches nur für Betreff und UID da ist (imap_fetch_overview) 
    Habe mir den Betreff-string schon rausgenommen und auf einer leeren Seite versucht zu dekodieren.
    Aber nein...

    Soll der:
    PHP-Code:
    =?UTF-8?q
    -string in dem Betreff-string irgend etwas einleiten (müsste ja rausgeschnitten werden???)

    Hoffe auf noch so einen Gedankenanstoß, der mir vor kurzem schon weitergeholfen hat (Danke tomtaz und nikosch77)

  • TAZweb
    antwortet
    räusper... ähm...

    Muss mich korrigieren!

    Klar geht das mit
    imap_mime_header_decode!

    PHP-Code:
    $betdek=imap_mime_header_decode($POhi->subject);
    /*hier wird von imap_headerinfo der subject-string 
    in ein Array dekodiert*/

    $betreff="";
    /*hier beginnt der Anfang der Variablen BETREFF (ist wichtig,
    da die Schleife, die alle Mails holt den Subject-String
    hintereinander schreibt*/

    for($bd1=0;$bd1<=1000;$bd1++) 
     {
      
    $betreff.=$betdek[$bd1]->text;
     }
    /*for-Schleife, die in dem Fall bis zu 1000 Werte aus dem Array
    ausliest und jeweils in die Variable BETREFF schreibt*/ 
    Ist doch gar nicht so schwer... Aber ich weiß nun zumidest, wo
    alles herkommt!

    Fragen als ERLEDIGT betrachten! - Danke

    GOOGLE:betreff / subject / umlaute dekodieren /imap php:ELGOOG

    Einen Kommentar schreiben:


  • TAZweb
    antwortet
    Zitat von nikosch77-new Beitrag anzeigen
    Wie war die Frage?
    Ich dachte (hoffte), dass es ausser den üblichen string-funktionen (wie strpos, expolde, etc...) eine Funktion existiert, die
    Zitat von nikosch77-new,16473
    encoded-word = "=?" charset "?" encoding "?" encoded-text "?="
    zerschneidet.

    Achso, als Frage...

    Existiert eine Funktion, die
    Zitat von nikosch77-new,16473
    encoded-word = "=?" charset "?" encoding "?" encoded-text "?="
    zerschneidet "?"

    Noch eine allgemeine Frage: Seit wann funktioniert der Mailversand über PHP [mail()] nicht mehr? Habe zwar eine klasse gefunden (die ich sogar relativ verstehe) die die Mail über meine Domain versendet, aber als ich das
    erste mal eine Systemmail schicken wollte (vieleicht 2-3 Jahre her) ging das noch per mail()...

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Wie war die Frage?

    Einen Kommentar schreiben:


  • TAZweb
    antwortet
    Zitat von nikosch77-new Beitrag anzeigen
    Gute Einstellung.
    Nicht wahr??? Aber sonst wird ja nix draus!!!

    Einen Kommentar schreiben:


  • TAZweb
    antwortet
    Naja, hat doch net geklappt... ist ja auch klar... Subject-strings
    werden ja auch nur kodiert, wenn Umlaute o.ä. drin ist... also wieder hübsch zerschneiden, oder gibt es da auch vordefinierte Funktionen?

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Und wieder mal danke ich für die Fülle an zusätzlichen Informationen von euch, die mich (schwer) anregen weiterzulernen
    Gute Einstellung.

    Einen Kommentar schreiben:


  • TAZweb
    antwortet
    Warum einfach, wenn es auch kompliziert geht

    Hi an alle sich diesen Thread anschauenden Mitglieder!

    Habe es nun geschafft...

    Ich sollte nicht soviel mit funktionen spielen, wenn es vordefinierte Lösungen gibt .

    Also, wie schon gesagt, imap_mime_header_decode bringt nichts, wenn ich das Array,
    welches ich mit imap_fetch_overview bekomme damit versuche auszulösen.

    Habe dann jenes Array schön zerschnitten, so dass ich an encoded-text "?=" komme, so wie von Nikosch77-new beschrieben.
    Die dekodierung mit imap_qprint klappt dann perfekt
    (imap_qprint ist die dekodierungs-funktion für quoted printable im Bereich IMAP)

    Zuletzt habe ich mir den Subject-String per imap_headerinfo geholt, der wesentlich mehr Informationen bereitstellt als imap_fetch_overview.

    Weitaus sinnvoller, da alle Informationen die ich brauche, dekodiert sind und somit einfacher und kürzer schreibbar sind.

    Und wieder mal danke ich für die Fülle an zusätzlichen Informationen von euch, die mich (schwer) anregen weiterzulernen!

    TAZARD

    Einen Kommentar schreiben:


  • TAZweb
    antwortet
    Zitat von Lavalampe Beitrag anzeigen
    imap_mime_header_decode

    Und weg ist das alles.
    Und da ist Array:
    PHP-Code:
    Array (     [0] => stdClass Object         (             [charset] =>
    default             [
    text] => Neue Antwort im Thema '         )      [1] => 
    stdClass Object         (             [charset] => default             [text] => 
    =?UTF-8?q?Neue_Antwort_im_Thema_=27Anh=C3=A4nge_aus_Mail 
    _per_Link_oder_auf_HDD...'         
    )  ) 
    Anfangs ließ ich alles aus dem Header mit imap_mime_header_decode laufen... hat aber irgendwie nichts gebracht... funktionierte auch ohne...

    Zitat von nikosch77-new
    encoded-word = "=?" charset "?" encoding "?" encoded-text "?="
    da muss ich wohl noch lesen

    Einen Kommentar schreiben:


  • Lavalampe
    antwortet
    imap_mime_header_decode

    Und weg ist das alles.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    RFC 2047
    encoded-word = "=?" charset "?" encoding "?" encoded-text "?="
    The "Q" encoding is similar to the "Quoted-Printable" content-
    transfer-encoding defined in RFC 2045. It is designed to allow text
    containing mostly ASCII characters to be decipherable on an ASCII
    terminal without decoding.

    (1) Any 8-bit value may be represented by a "=" followed by two
    hexadecimal digits. For example, if the character set in use
    were ISO-8859-1, the "=" character would thus be encoded as
    "=3D", and a SPACE by "=20". (Upper case should be used for
    hexadecimal digits "A" through "F".)

    (2) The 8-bit hexadecimal value 20 (e.g., ISO-8859-1 SPACE) may be
    represented as "_" (underscore, ASCII 95.). (This character may
    not pass through some internetwork mail gateways, but its use
    will greatly enhance readability of "Q" encoded data with mail
    readers that do not support this encoding.) Note that the "_"
    always represents hexadecimal 20, even if the SPACE character
    occupies a different code position in the character set in use.

    (3) 8-bit values which correspond to printable ASCII characters other
    than "=", "?", and "_" (underscore), MAY be represented as those
    characters. (But see section 5 for restrictions.) In
    particular, SPACE and TAB MUST NOT be represented as themselves
    within encoded words.
    Tipp: Die Hexzahlen sind die selben wie in HTML

    Einen Kommentar schreiben:


  • TAZweb
    antwortet
    Hmm...

    Ich habe es weiter probiert und bin aber leider nicht zum gewünschten Ergebniss gekommen.

    Jener String müsste doch mit einer dieser utf8-funktionen lesbar zu machen sein???
    Bin ich einfach zu blöde? <- erwarte dazu keine Antwort

    Einen Kommentar schreiben:

Lädt...
X