Formularz kontakt - polskie zanki


(Sobladen) #1

Mam problem z polskimi znakami w wiadomości która przychodzi na skrzynkę.. plik jest ustawiony na utf8 i w źródle tez jest utf-8

Oto kawałek kodu:

<?		

}

// sprawdzamy, czy zmienne przesłane z formularza nie są puste

elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['temat']) && !empty($_POST['email'])) {

    // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość

    // zmienna $message zawiera treść wiadomości

    $message = "Treść wiadomości:\n$_POST[tresc]\nWysłał: $_POST[imie]\ne-mail: $_POST[email]";

    // zmienna $header zawiera przede wszystkim adres zwrotny

    $header = "From: $_POST[imie] <$_POST[email]>";

    // funkcja mail() za pomocą której wiadomość zostanie wysłana

    @mail("adres@email.com","Wiadomosc ze strony WWW","$message","$header","Content-type: text/html; charset=utf-8\r\n ")

    or die('Nie udało się wysłać wiadomości');

    // wyświetlenie komunikatu w przypadku powodzenia 

    echo "

Wiadomość została wysłana poprawnie!"; } // lub w przypadku nie wypełnienia formularza do końca else echo "

Wypełnij wszystkie pola formularza!"; ?>


(Sitemaster) #2

Sprobuj coś w ten deseń

$header ="MIME-Version: 1.0\r\n";

$header.="Content-type: text/html; charset=utf-8\r\n";

$header.='From:'.$_POST['imie'].' <'.$_POST['email'].">\r\n";

$header.='Message-ID: <'.time().'-'.$_POST['email'].">\r\n";

$header.='X-Mailer: PHP v'.phpversion();

a potem:

@mail('test@test.com','Wiadomosc ze strony WWW',$message,$header)

(Sobladen) #3

Dzieki...

Teraz treść wiadomości jest ok. Ale nie wyświetla nadal polskich liter w spisie wiadomości, tzn od kogo wiadomość w "od"


(Sitemaster) #4

A sprobuj

header.='From:'.$_POST['imie'].' <'.$_POST['email'].">\r\n";

zmienić na

header.='From:'.iconv('UTF-8','ISO-8859-2',$_POST['imie']).' <'.$_POST['email'].">\r\n";

(Sobladen) #5

Dzięki. Teraz jest wszystko ok. Poza wyjatkiem litera "ą" ona tylko jest wyświetlana jako krzaczek..Ale tylko to juz przejdzie

-- Dodane 14.01.2010 (Cz) 16:12 --

Dzięki. Teraz jest wszystko ok. Poza wyjatkiem litera "ą" ona tylko jest wyświetlana jako krzaczek..Ale tylko to juz przejdzie


(Sitemaster) #6

Pokombinuj więc z kodowaniem docelowym. Zamiast ISO-8859-2 sprawdź inne, może ASCII albo Windows-1252, albo jeszcze coś innego