![]() |
![]() ![]() |
![]() |
-Adip- |
![]()
Post
#1
|
Goście ![]() |
Witam z moim problemem borykam się już od dwóch dni. Wiem że temat był już wałkowany, ale nigdzie nie mogę znaleść prawidłowej odpowiedzi. Mam formularz PHP, ale po wysłaniu na pocztę nie ma polskich znaków.
CODE <?php //--- początek formularza --- if(empty($_POST['submit'])) { ?> <?php } else { //twoje dane $email = 'moj adres'; //dane z formularza $formName = $_POST['formName']; $formEmail = $_POST['formEmail']; $formText = $_POST['formText']; if(!empty($formName) && !empty($formEmail) && !empty($formText)) { //--- początek funkcji weryfikującej adres e-mail --- function checkMail($checkmail) { if(filter_var($checkmail, FILTER_VALIDATE_EMAIL)) { if(checkdnsrr(array_pop(explode("@",$checkmail)),"MX")){ return true; }else{ return false; } } else { return false; } } //--- koniec funkcji --- if(checkMail($formEmail)) { //dodatkowe informacje: ip i host użytkownika $ip = $_SERVER['REMOTE_ADDR']; $host = gethostbyaddr($_SERVER['REMOTE_ADDR']); //tworzymy szkielet wiadomości //treść wiadomości $mailText = "Treść wiadomości:\n$formText\nOd: $formName, $formEmail ($ip, $host)"; //adres zwrotny $mailHeader = "From: $formName <$formEmail>"; //funkcja odpowiedzialna za wysłanie e-maila @mail($email, 'Formularz kontaktowy', $mailText, $mailHeader) or die('Błąd: wiadomość nie została wysłana'); //komunikat o poprawnym wysłaniu wiadomości echo 'Wiadomość została wysłana'; } else { echo 'Adres e-mail jest niepoprawny'; } } else { //komunikat w przypadku nie powodzenia echo 'Wypełnij wszystkie pola formularza'; } //--- koniec formularza --- } ?> Niewiem gdzie i co trzeba wsawic aby bylo dobrze |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Problem jest bardziej skomplikowany. Odpowiednie kodowanie musi być określone w mailu aby było ok
Zakładam że działasz na UTF-8 (jeśli nie wystarczy zmienić w kodzie):
Jeśli masz inne kodowanie niż UTF-8 to zmień je w nagłówkach i przy temacie pomiędzy dwoma "?" (IMG:style_emoticons/default/wink.gif) Powinno działać (IMG:style_emoticons/default/smile.gif) |
|
|
-Adip- |
![]()
Post
#3
|
Goście ![]() |
Próbowałem wstawić w kodzie
Kod mail($email, 'Formularz kontaktowy', $mailText, $mailHeader, [b]$headers[/b]) or die('Błąd: wiadomość nie została wysłana'); a także nagłówki Kod // nagłówki niezbędne do wysłania treści maila tak by był w danym kodowaniu: i teraz maile wogóle nie przychodzą(IMG:style_emoticons/default/sad.gif)
$headers = 'MIME-Version: 1.0' . "\r\n"; $headers.= 'Content-type: text/html; charset=utf-8' . "\r\n"; |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Oj strasznie namotałeś... masz za dużo argumentów w funkcji mail()
Przejrzyj to i odpowiednio rozmieść argumenty (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 20:43 |