Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Problem z polskimi znakami w skrypcie wys. mail
Forum PHP.pl > Forum > Przedszkole
kamlot
Witam, mam problem ze skryptem do wysyłanie emaila ze strony na moja skrzynkę. Wszystko działa tekst na stronie wyświetlany jest dobrze, a w mailu który otrzymuję zamiast polskich znaków są krzaczki. Do jasności dodam, że serwer www i skrzynka pocztowa sa na nazwie.pl

  1. <?php
  2. if(empty($_POST['submit'])){
  3. ?>



  1. <form action="index.php" method="post">
  2. <span style="line-height: 2">
  3. Imię i Nazwisko:(*)<br />
  4. <input type="text" name="imienazwisko" style="width:300px;"/><br />
  5. E-Mail:(*)<br />
  6. <input type="text" name="email" style="width:300px;"/><br />
  7. Telefon:<br />
  8. <input type="text" name="tel" style="width:300px;"/><br />
  9. Treść wiadomości:(*)<br />
  10. <textarea name="trescwiadomosci" cols="30" rows="6" style="width:300px;"></textarea><br />
  11. <input type="submit" name="submit" value="Wyślij formularz"/>
  12. <input type="reset" value="Wyczyść"/>
  13. </form>



  1. <?php
  2. }elseif(!empty($_POST['imienazwisko']) && !empty($_POST['email']) && !empty($_POST['trescwiadomosci'])){
  3. function SprawdzEmail($email) {
  4. if (!eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,4}$" , $email)){
  5. return false;
  6. }
  7. return true;
  8. }
  9. if(SprawdzEmail($_POST['email'])){
  10. $adresemail='test@test.pl';
  11. $charset = 'utf-8';
  12. $wiadomosc="Od: $_POST[imienazwisko] ($_POST[email])\n\n tel: $_POST[tel] \n\n treść: $_POST[trescwiadomosci]";
  13. $nadawca="From: $_POST[email]";
  14. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  15. @mail($adresemail, "Formularz kontaktowy", "$wiadomosc", "$nadawca");
  16. echo "<span style=\"color: #00D800; font-weight: bold; \">Dziękujemy, formularz został wysłany.</span>";
  17. }else{ echo "<span style=\"color: #FF0000; text-align: center; font-weight: bold;\">Wprowadzony adres E-Mail jest niepoprawny!!!</span>"; }
  18. }else{ echo "<span style=\"color: #FF0000; text-align: center; font-weight: bold;\">Cofnij i wypełnij wszystkie pola formularza!!!</span>"; }
  19. ?>


Proszę o szybką odpowiedź. Ja jestem trochę zielony w tym.

fotexxx
czy napewno plik ma kodowanie utf8?
kamlot
Tak, plik w który zawarty jest ten formularz ma kodowanie ustawione na utf8. Dla pewności przepuściłem plik jeszcze przez program zmieniający kodowanie który znalazłem w internecie zwany Gżegżółka. Tak jak mówię na stronie wszystko jest ok, wypełnię formularz kliknę wyślij mail na skrzynkę przychodzi, ale zamiast polskich znaków krzaczki sad.gif. Nie mam kompletnie pomysłu co jest nie tak. Może w kodzie jest coś nie tak

  1. $charset = 'utf-8';
  2.  
  3.  
  4.  
  5.  
  6.  
  7. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

Być może gdzieś w tych fragmentach jest problem?
erix
Było, poszukaj na forum.

Nawet w tym tygodniu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.