Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Polskie znaki w formularzu pocztowym
Forum PHP.pl > Forum > Przedszkole
samurajjack
Cześć właśnie zaczynam moją przygodę z php i mam pewien problem z kodowaniem polskich znaków w formularzu pocztowym. W wiadomości jaką dostaję na mail nie ma polskich znaków. Jeżeli ktoś wie jak rozwiązać ten mały problemik to z góry dziękuje.
Oto plik php odpowiedzialny za wysyłkę:
  1. <?php
  2.  
  3. $nazwa = $_POST['nazwa'];
  4. $wiek = $_POST['wiek'];
  5. $grupa = $_POST['grupa'];
  6. $opiekun =$_POST['opiekun'];
  7. $telefon = $_POST['telefon'];
  8. $mail = $_POST['mail'];
  9.  
  10.    if (!$nazwa || !$wiek || !$grupa || !$mail || !$telefon || !$opiekun )
  11.  
  12.        {
  13.            print ("Nie zostaly wypelnione wszystkie pola");
  14.            exit;
  15.        }
  16.    
  17.    if(!empty($mail))
  18.        {
  19.              function check_mail($new_email)
  20.                  {
  21.                    $ok = "/[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+.[a-zA-Z]{2,4}/";
  22.                    return (preg_match($ok, $new_email))? true: false;
  23.                  }
  24.              if(!check_mail($mail))
  25.                  {
  26.                      echo '<br /><center><font color="Red">Mail "'.$mail.'" jest niepoprawny!</font></center><br />';
  27.                  }
  28.        }
  29.  
  30.     $adresdo = 'piotr@aqua-kids.pl';
  31.    $temat = 'Wiadomość ze strony www';
  32.    $zawartosc ='Imię i Nazwisko dziecka: '.$nazwa."\n"
  33.                .'Wiek dziecka: '.$wiek."\n"
  34.                .'Przynależność do grupy wiekowej: '.$grupa."\n"
  35.                .'Imię i Nazwisko opiekuna:'.$opiekun."\n"
  36.                .'Numer telefonu: '.$telefon."\n"
  37.                .'Email: '.$mail."\n";    
  38.                
  39.    if($mailsent)
  40.        {
  41.            echo "<h2>Gratulacje! Właśnie wysłano następujący formularz: </h2>";
  42.            echo "<p><b>Imię i nazwisko dziecka:</b> $nazwa</p>";
  43.            echo "<p><b>Wiek dziecka:</b> $wiek</p>";
  44.            echo "<p>Grupa wiekowa:</b> $grupa</p>";
  45.            echo "<p>Imie i nazwisko opiekuna:</b> $opiekun</p>";
  46.            echo "<p>Telefon:</b> $telefon</p>";
  47.            echo "<p>Email:</b> $mail</p>";
  48.            
  49.            
  50.         }
  51.    else
  52.        {
  53.            echo"Wystąpił błąd...";
  54.         }
  55. ?>
webasek
Sprawdź tutaj http://forum.php.pl/index.php?showtopic=37696
kusiu
  1. <?php
  2. function send_mail($to, $subject, $tresc)
  3. {    
  4.    $headers  = 'MIME-Version: 1.0' . "r\n";
  5.    $headers .= 'Content-type: text/html; charset=iso-8859-2' . "r\n"; //lub utf-8 itd.
  6.  
  7.    // wiadomość
  8.    $message = "
  9.    <html>
  10.    <head>
  11.        <title>Temat</title>
  12.    </head>
  13.    <body>
  14.            $tresc
  15.    </body>
  16.    </html>
  17.    ";    
  18.  
  19.    // Wysłanie e-maila
  20.    mail($to, $subject, $message, $headers);
  21. }    
  22. ?>
hackepeter
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2.  
  3. <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
  4.  
  5. <script language="javascript">
  6. function insertTag(tag, close) {
  7. document.htmlForm.wpis.value = document.htmlForm.wpis.value + " " + tag + " ";
  8. document.htmlForm.wpis.focus();
  9. }
  10. <title>DODAJ</title></head>
  11. <form action="" method="POST" name="htmlForm">
  12. <textarea name="wpis"></textarea>
  13.  
  14. <a href="javascript:insertTag('Ł')"> Ł </a>
  15. </form>

albo zrób odnośnik do każdej polskiej litery żeby dynamicznie wstawiał
całe encje polskich liter. Wtedy nawet na chinskich kompach będą widoczne
batman
@samurajjack, @hackepeter używajcie bbcode. Tym razem poprawiłem, następnym razem będzie warn.
Gderacz gościnnie
Witam,

powyższe rozwiązania mi nie działały wiec szukałem dalej i znalazłem.
Może komuś to pomoże, u mnie działa poprawnie:

  1. $header = "From: $email \nContent-type: text/html; charset=utf-8; \r\n";


Rozwiązanie znalazłem (i nieco przerobiłem żeby działało) na

http://www.forum.optymalizacja.com/topic/1...rmularzu-again/

tam mieli podobny problem.
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.