Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]problem z polskimi znakami w mailu
BugsBunny
post
Post #1





Grupa: Zarejestrowani
Postów: 206
Pomógł: 4
Dołączył: 2.04.2005

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


Witam,

naszukałem się trochę po forum wprowadziłem trochę zmian i nadal w mailu mam krzaki zamiast polskich znaków.

  1. <?php
  2. if($_POST['sendMail'])
  3. {
  4.    try
  5.      {
  6.            $Name = Validator::length(30,$_POST['name'],'podpis');
  7.            $subject = "[homepage] ".Validator::length(40,$_POST['topic'],'temat');
  8.          $email = Validator::email($_POST['email']);
  9.          $recipient = "MOJADRES@gmail.com";
  10.          $mail_body = Validator::length(500,$_POST['content'],'treść');
  11.  
  12.      }
  13.    catch(Exception $e)
  14.    {
  15.         $tpl->assign('SendError',$e->GetMessage());
  16.        $Mailerror = true;
  17.        $tpl->assign('oldTopic',$_POST['topic']);
  18.        $tpl->assign('oldEmail',$_POST['email']);
  19.        $tpl->assign('oldContent',$_POST['content']);
  20.        $tpl->assign('oldName',$_POST['name']);
  21.     }
  22.  
  23.      //  to miało pomoc ale nie pomaga
  24.  //    $mail_body = sprintf( "=?utf-8?B?%s?=", base64_encode($mail_body) );
  25. //    $Name = sprintf( "=?utf-8?B?%s?=", base64_encode($Name) );
  26.  
  27.    $header = "MIME-Versio: 1.0r\n"."Content-type: text/html; charset=UTF-8r\n";
  28.    $header .= "From: ". $Name . " <" . $email . ">r\n";
  29.  
  30.    
  31.     if(!$Mailerror)
  32.    {
  33.        $tpl->assign('send',true);
  34.        if(@mail($recipient, $subject, nl2br($mail_body), $header))
  35.        {
  36.             $tpl->assign('result',true);
  37.         }
  38.          else
  39.          {
  40.              $tpl->assign('result',false);
  41.         }
  42.    }
  43.  
  44.  
  45. }
  46. ?>


Ten post edytował BugsBunny 4.10.2008, 11:44:08
Go to the top of the page
+Quote Post
piotrekk
post
Post #2





Grupa: Zarejestrowani
Postów: 123
Pomógł: 2
Dołączył: 13.11.2006

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


a masz ustawione utf-8 w miejscu gdzie masz formularz do wpisywania tekstu do maila ? Tam tez musi być
Go to the top of the page
+Quote Post
BugsBunny
post
Post #3





Grupa: Zarejestrowani
Postów: 206
Pomógł: 4
Dołączył: 2.04.2005

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


Fakt zapomniałem o tym
  1. <form action="index.php?{$FormPage}" method="post" name="data" accept-charset="utf-8">


jednak po dodaniu nic nie zmiania. Po odekmentowaniu Tych dwóch linijek w kodzie nadal wyświetla głupoty


a charset nie powiniem być coś z latin-2 albo z iso-8859-2.(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Działa. WIelkie dzięki. Zapomniałem porpostu wrzucić pliku na serwer (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)

Ten post edytował BugsBunny 4.10.2008, 12:09:43
Go to the top of the page
+Quote Post
piotrekk
post
Post #4





Grupa: Zarejestrowani
Postów: 123
Pomógł: 2
Dołączył: 13.11.2006

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


a w tym miejscu masz zmienione ?:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Untitled Document</title>
  5. </head>
  6.  
  7. </body>
  8. </html>


Kiedys tak mialem i jak tu zmienilem to wszystko działalo
Go to the top of the page
+Quote Post
-gabiww-
post
Post #5





Goście







Witam
Próbuję różnych metod i kombinacji z forum ale niestety nie mogę sobie poradzić. Jak dostaję email na skrzynkę wysłany sendmailem zamiast polskich znaków same krzaki. Gdzie i co ma wstawić aby tego uniknąć. Pomocy
Go to the top of the page
+Quote Post
-gabiww-
post
Post #6





Goście







Cytat(gabiww @ 16.10.2008, 07:29:54 ) *
Witam
Próbuję różnych metod i kombinacji z forum ale niestety nie mogę sobie poradzić. Jak dostaję email na skrzynkę wysłany sendmailem zamiast polskich znaków same krzaki. Gdzie i co ma wstawić aby tego uniknąć. Pomocy

Mój kod sendmaila


CODE
<?
$wiadomosc = "Wybrana_przygoda:$wybrana_przygoda \nImie_bohatera:$imie_bohatera \nBohater_plec:$bohater_plec \nimie_towarzysza:$imie_towarzysza
\ntowarzysz_plec:$towarzysz_plec \nmiejsce_przygody:$miejsce_przygody \ndedykacja_przygody:$dedykacja_przygody \nze_zdjeciem:$ze_zdjeciem
\nnazwisko_zamawiajacego:$nazwisko_zamawiajacego \nulica_zamawiajacego:$ulica_zamawiajacego \nkod_zamawiajacego:$kod_zamawiajacego
\nmiejscowosc_zamawiajacego:$miejscowosc_zamawiajacego \nemail_zamawiajacego:$email_zamawiajacego \ntelefon_zamawiajacego:$telefon_zamawiajacego
\nodbior_zamowienia:$odbior_zamowienia \nuwagi_zamawiajacego:$uwagi_zamawiajacego";
$header = "From: $imiernReply- zamowienie: $emailrn";
mail ("biuro@adres.pl", "Zamowienie", $wiadomosc, $header);
?>

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">

<TITLE>tytuł</TITLE>

<LINK REL="stylesheet" HREF="style.css" TYPE="text/css">
</head>

<body topmargin="5" leftmargin="0" marginheight="0" marginwidth="0" bottommargin="0" rightmargin="15">
<br><br>
<center>
<form onSubmit="return validateForm()" name="email" action="sendmail.php" method="post">
<table width=620 cellpadding="2" cellspacing="2">

<tr><td align="center"><hr size=1 color=blue><b>Mail został wysłany.<br> dziękujemy</b><hr size=1 color=blue></td></tr>

</table>
</form>
</center>
</body>
</html>
Go to the top of the page
+Quote Post
MajareQ
post
Post #7





Grupa: Zarejestrowani
Postów: 382
Pomógł: 22
Dołączył: 21.05.2007
Skąd: Elbląg

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


Masz nie ustawione wszystkie nagłówki.

Ten post edytował MajareQ 16.10.2008, 15:28:16
Go to the top of the page
+Quote Post
-gabiww-
post
Post #8





Goście







A możesz dokładniej bo php to dla mnie prawie czarna magia
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 3.10.2025 - 21:24