Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> php mail - problem z kodowaniem, Brak polskich znaków - kolejny problem !!!
s4v4g3
post 25.06.2014, 21:55:05
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 12.05.2011

Ostrzeżenie: (0%)
-----


Witam, albo coś jest nie tak z moim serwerem pocztowym, albo znowu coś namieszałem.
Proszę o sprawdzenie - brak polskich znaków ale tylko w mailu na serwerze hostingowym.
Jak zmienie na serwer pocztowy np. gmaila to polskie znaki są...
Proszę zerknijcie..

  1. <?PHP
  2.  
  3. if(isset($_POST['submit'])) {
  4.  
  5. $mailnadawcy = $_POST['mailnadawcy'];
  6. $mail = "moimail@poczta.com";
  7. $temat = "zapytanie....";
  8. $body = $_POST['body'];
  9.  
  10. $imie_nazwisko = $_POST['imie_nazwisko'];
  11. $gmail = $_POST['gmail'];
  12. $wiadomosc = $_POST['wiadomosc'];
  13.  
  14. $header = "Od: ". $mailnadawcy . "";
  15.  
  16. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  17.  
  18.  
  19. $body = "From: $mailnadawcy\n
  20. Imie, Nazwisko: $imie_nazwisko\n
  21. Adres e-mail: $gmail\n
  22. Tresc Wiadomosci: $wiadomosc\n
  23. ";
  24.  
  25. mail($mail, $temat, $body, $header);
  26.  
  27. $headers = 'MIME-Version: 1.0' . "\r\n";
  28. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  29. $headers .= 'From: '.$mailnadawcy.''."\r\n";
  30.  
  31. $tmp = mail($mailnadawcy,$temat,$wiadomosc,$headers);
  32. if($tmp) echo 'Wysłano!';
  33. else echo 'Wystąpił błąd';
  34.  
  35. echo "<script language=\"javascript\" type=\"text/javascript\">
  36. alert('Dziekuję za wysłanie maila, skontaktuję się z Państwem wkrótce...');
  37. window.location = \"http://$_SERVER[HTTP_HOST]\";
  38. </script>";
  39.  
  40. exit();
  41.  
  42. }}
  43. ?>
  44.  
Go to the top of the page
+Quote Post
Michael2318
post 25.06.2014, 22:17:32
Post #2





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

Ostrzeżenie: (0%)
-----


Ale Ty maile wysyłasz dwa, w pierwszym w nagłówku dodajesz tylko to:

  1. $header = "Od: ". $mailnadawcy . "";


a w drugim:

  1. $headers = 'MIME-Version: 1.0' . "\r\n";
  2. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  3. $headers .= 'From: '.$mailnadawcy.''."\r\n";


Dodaj w pierwszym mailu takie same nagłówki jak w drugim.

Ten post edytował Michael2318 25.06.2014, 22:22:34
Go to the top of the page
+Quote Post
s4v4g3
post 25.06.2014, 23:51:27
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 12.05.2011

Ostrzeżenie: (0%)
-----


Chyba sam się już zamotałem..
Możesz podać cały kod jak powinien wyglądać...
Albo jest zapóźno już...smile.gif
Dzięki...
Go to the top of the page
+Quote Post
PawelC
post 25.06.2014, 23:56:51
Post #4





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Co Ci da gotowiec?smile.gif

Analiza kodu od 1 do 25 linijki:
  1. <?PHP
  2.  
  3. if(isset($_POST['submit'])) {
  4.  
  5. $mailnadawcy = $_POST['mailnadawcy'];
  6. $mail = "moimail@poczta.com";
  7. $temat = "zapytanie....";
  8. $body = $_POST['body'];
  9.  
  10. $imie_nazwisko = $_POST['imie_nazwisko'];
  11. $gmail = $_POST['gmail'];
  12. $wiadomosc = $_POST['wiadomosc'];
  13.  
  14. $header = "Od: ". $mailnadawcy . "";
  15.  
  16. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  17.  
  18.  
  19. $body = "From: $mailnadawcy\n
  20. Imie, Nazwisko: $imie_nazwisko\n
  21. Adres e-mail: $gmail\n
  22. Tresc Wiadomosci: $wiadomosc\n
  23. ";
  24.  
  25. mail($mail, $temat, $body, $header);

Gdzie tutaj w $header masz ustawione kodowanie? W nagłówku masz ustawione tylko Od, brak ustawionego kodowania. Natomiast w dalszej części kodu, czyli następny mailu masz już ustawione kodowanie:
  1. $headers = 'MIME-Version: 1.0' . "\r\n";
  2. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  3. $headers .= 'From: '.$mailnadawcy.''."\r\n";

Mam nadzieję, że teraz wiesz w czym tkwi błąd smile.gif Popraw to i daj znać...

Ten post edytował ExPlOiT 25.06.2014, 23:57:35
Go to the top of the page
+Quote Post
Michael2318
post 26.06.2014, 08:42:28
Post #5





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

Ostrzeżenie: (0%)
-----


Jakby na to nie patrzeć, podałem Ci gotowca... Masz znaleźć pierwszy fragment podany przeze mnie i zamienić go na ten drugi, który podałem, zamieniając jedynie nazwę zmiennej z $headers na $header.
Go to the top of the page
+Quote Post
s4v4g3
post 26.06.2014, 11:08:31
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 12.05.2011

Ostrzeżenie: (0%)
-----


omg, za późno było jednak:)))
Dzięki smile.gif

  1. <?PHP
  2.  
  3. if(isset($_POST['submit'])) {
  4.  
  5. $mailnadawcy = $_POST['mailnadawcy'];
  6. $mail = "moimail@poczta.com";
  7. $temat = "zapytanie....";
  8. $body = $_POST['body'];
  9.  
  10. $imie_nazwisko = $_POST['imie_nazwisko'];
  11. $gmail = $_POST['gmail'];
  12. $wiadomosc = $_POST['wiadomosc'];
  13.  
  14. $headers = 'MIME-Version: 1.0' . "\r\n";
  15. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  16. $headers .= 'From: '.$mailnadawcy.''."\r\n";
  17.  
  18. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  19.  
  20. $body = "From: $mailnadawcy\n
  21. Imie, Nazwisko: $imie_nazwisko\n
  22. Adres e-mail: $gmail\n
  23. Tresc Wiadomosci: $wiadomosc\n";
  24.  
  25. mail($mail, $temat, $body, $headers);
  26.  
  27. $tmp = mail($mailnadawcy,$temat,$wiadomosc,$headers);
  28. if($tmp) echo 'Wysłano!';
  29. else echo 'Wystąpił błąd';
  30.  
  31. echo "<script language=\"javascript\" type=\"text/javascript\">
  32. alert('Dziekuję za wysłanie maila, skontaktuję się z Państwem wkrótce...');
  33. window.location = \"http://$_SERVER[HTTP_HOST]\";
  34. </script>";
  35.  
  36. exit();
  37.  
  38. }}
  39. ?>


Ten post edytował s4v4g3 26.06.2014, 11:18:07
Go to the top of the page
+Quote Post
Michael2318
post 26.06.2014, 11:36:25
Post #7





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

Ostrzeżenie: (0%)
-----


Wkleiłeś gotowy kod, ale nie wiedzieć czy jeszcze czegoś oczekujesz, czy też może Ci to już działa...?
Go to the top of the page
+Quote Post
s4v4g3
post 26.06.2014, 11:56:18
Post #8





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 12.05.2011

Ostrzeżenie: (0%)
-----


Działa działa - to tylko potwierdzenie smile.gif
Krzaki nie przychodzą smile.gif
Są polskie znaki itd:)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.04.2024 - 15:51