Autor Zpráva
BuGeR
Profil
Zdravím.. mam takový problém, je to trochu stupidní a týka se to nejspíš základu php.
Mám funkci která, odesíla mail s diakritikou bez "klikyháku".
function autoUTF($s){
    if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $s))
    return $s;
    if (preg_match('#[\x7F-\x9F\xBC]#', $s))
    return iconv('WINDOWS-1250', 'UTF-8', $s);
    return iconv('ISO-8859-2', 'UTF-8', $s);
}

function lfmail ($to, $predmet, $zprava) {  
    $predmet = "=?utf-8?B?".base64_encode(autoUTF ($predmet))."?=";
    $head = "From: no-reply@live-fun.cz";
    $head .= "MIME-Version: 1.0\n";
    $head .= "Content-Type: text/html; charset=\"utf-8\"\n";
    $head .= "Content-Transfer-Encoding: base64\n";
    $zprava = base64_encode (autoUTF ($zprava));
    return mail ($to, $predmet, $zprava, $head); 
}


Když ale pak funkci vyvolám (např.: lfmail("buger@email.cz", "test", "ěščřžýáíé");) tak nefunguje, když odstraním řádek 11 v kódu výše vše funguje.
Problém je teda vtom, že to nějak nebere "From"... Kde dělam chybu?
S pozdravem BuGeR.
Majkl578
Profil
Protože na tom řádku chybí \n na konci.
BuGeR
Profil
Už to funguje, moc vám děkuji, omlouvám se za tu stupiditu, můžete lock :).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0