Keresés

Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz fordfairlane #3586 üzenetére

    A quoted_printable_encode() csak 5.3.0-nál vagy afelett elérhető, ennél sajnos pont eggyel régebbi van, így más megoldáshoz kell folyamodnom. :(

    "Az lehet a probléma, hogy nem szabályosan van megformázva a From mező"
    Mire gondolsz? A következő sor vonatkozik a headernek a from mezőjére:
    $headers .= "From: $sender_name <$sender_name>" . "\r\n";
    Itt a $sender_name részt RegEx(p)-sz(/p)el ellenőrzöm, az alábbi kódot innen megfelelőnek találtam:
    preg_match('/^[A-z0-9\-_]+(\.[A-z0-9\-_]+)*@(([A-z0-9]+\-?[A-z0-9]+)+\.)+[A-z]{2,6}$/', $input);
    az inputba meg nyilván a $_POST cucc kerül.
    Az e-mail cím maga helyes.

    Ellenőrzés után következik a fejléc elküldése.
    Próbálkoztam már igen sokféleképpen, már teljesen össze vagyok zavarodva, lehet, hogy még a példákat az általad linkelt cuccból is félreértettem:
    SAJÁT példák, egyik se jó:
    $headers .= "From: =?ISO-8859-2?Q?".base64_encode($sender_name)."?= <$sender_name>" . "\r\n";
    Vagy a másik:
    $headers .= "From: =?UTF-8?Q?".base64_encode($sender_name)."?= <$sender_name>" . "\r\n";
    Vagy a Q helyett B-t írva (őő mi is a különbség? :B):
    $headers .= "From: =?UTF-8?B?".base64_encode($sender_name)."?= <$sender_name>" . "\r\n";
    ezt dobja (jó, mondjuk érthető, mert ez már nagyon zagyva):
    =?UTF-8?B??=@freemail.hu, UNEXPECTED_DATA_AFTER_ADDRESS@.SYNTAX-ERROR.

    Szóval nem tudom, mi lenne a helyes megoldás. :B

Új hozzászólás Aktív témák

Hirdetés