Gdy wysyła ktoś do mnie maila formularzem kontaktowym na gmaila, wszystko jest oK. Ale gdy wysyła na pocztę home.pl wtedy zamiast polskich liter pokazują się znaki zapytania.
(Sprawdziłem i po wysłaniu bezpośrednio z o2 na home.pl nie było krzaków)
Więc błąd musi być w formularzu
Oto jego kod:
<?php require_once('connect.php'); require_once('functions.php'); ?> <html> <head> <?php include('tpl/head.php') ?> </head> <body> <div id="naglowek"> <!-- code by klocek & Quik --> <?php include('tpl/naglowek.php') ?> </div> <div id="menu"> <?php include('tpl/menu.php') ?> </div> <div id="kontener"> <h1>Kontakt</h1> <?php // sprawdzamy, czy zmienna $submit jest pusta // wyświetlamy formularz ?> <?php $header = "From: $from\nReply-to: $from\nMIME-Version: 1.0\nContent-type: text/html; charset=iso-8859-2"; ?> <div id="boxform"> <form action="kontakt.php" method="post" id="test"> <div> <label>Imię / Login <strong>*</strong></label> <input type="text" class="pole" name="imie" /> </div> <div> <label>E-mail <strong>*</strong></label> <input type="text" class="pole" name="email" /> </div> <div> <label>Treść wiadomości <strong>*</strong></label> <textarea name="tresc" rows="5" cols="20"></textarea> </div> <div style="margin-left:160px;"> <input type="submit" name="submit" value="Wyślij" class="button" /> </div> </form> </div> <?php } // sprawdzamy, czy zmienne przesłane z formularza nie są puste // 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 // wyświetlenie komunikatu w przypadku powodzenia } // lub w przypadku nie wypełnienia formularza do końca ?> </div> <div id="stopka"> <?php include('tpl/stopka.php') ?> </div> </body> </html>
Co trzeba zrobić żeby wysyłał polskie znaki?