Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Problem z polskimi znakami
Forum PHP.pl > Forum > Przedszkole
trywalmak
Mam problem ze skryptem ktory wysyła maila przez formularz na stronie, maile dochodza tyle ze niema polskich znaków. Moglby ktos pomoc ?smile.gif

  1. <?php
  2. if (!$_POST['nick'] || !$_POST['mail'] || !$_POST['temat'] || !$_POST['tresc'])
  3. {
  4. echo "Nie uzupełniłeś wszystkich rubryk.";
  5. }
  6.  
  7. $wiadomosc =
  8. "Imie: ".$_POST['nick']."
  9.  
  10. e- mail: ".$_POST['mail']."
  11.  
  12. Temat: ".$_POST['temat']."
  13.  
  14. Tresc: ".$_POST['tresc']." ";
  15.  
  16.  
  17.  
  18. $tematyka = "nazwa strony - ".$_POST['temat'];
  19.  
  20. mail ("mail@o2.pl", $tematyka, $wiadomosc );
  21.  
  22. ?>
dr revuu
Być może błąd tkwi w kodowaniu pliku formularza/php. Używamy ponoć Unicode UTF-8. Nie wiem jak w innych programach ale w EditPadzie Pro to idzie tak: convert>text-encoding>UTF-8>ok. Miej na uwadze, że lepiej od razu sprawdzić kodowanie, bo po przekonwertowaniu polskie znaki zamieniają się na różne dzikie stwory i trzeba poprawiać dokument. Ew. mogłeś też nie zadeklarować języka na początku dokumentu html.
agentmullder
To chyba walkowane bylo setki razy.

Temat: MYSQL Polskie znaki
Michaxxx
Cytat
To chyba walkowane bylo setki razy.

Temat: MYSQL Polskie znaki

Co ma mysql do Mail()? mellow.gif
Zobacz To
trywalmak
Kurde, no kombinuje z tym kodowaniem i niemoge, albo wywala mi krzaki w mailu w wartościach ze zmiennej $wiadomosc albo z tych zdefiniowanych w mailu. Strona na ktorej znajduje sie formularz ma kodowanie utf-8. Ten kod php mam wymieszany z HTML w bloku body , tez z kodowaniem utf-8.

  1. <?php
  2. if (!$_POST['nick'] || !$_POST['mail'] || !$_POST['temat'] || !$_POST['tresc'])
  3. {
  4. echo "Nie uzupełniłeś wszystkich rubryk.";
  5. }
  6.  
  7. $wiadomosc =
  8. "Imię: ".$_POST['nick']."
  9.  
  10. e- mail: ".$_POST['mail']."
  11.  
  12. Temat: ".$_POST['temat']."
  13.  
  14. Treść: ".$_POST['tresc']." ";
  15.  
  16. $tematyka = "jakas strona - ".$_POST['temat'];
  17.  
  18.  
  19. $header .= "Content-typ: text/html; charset=utf-8r\n";
  20. $header .= "Content-Transfer-Encodin: 8bitr\n";
  21. $header .= 'From: '.$_POST['nick'] .$_POST['mail'] . "\r\n";
  22.  
  23. mail ("mail@o2.pl", $tematyka, $wiadomosc, $header );
  24.  
  25. ?>
piotrooo89
strasznie dziwnie robisz ten zwrot karetki (\r\n).

  1. $header .= "Content-typ: text/html; charset=utf-8\r\n";


tak powinno być.
trywalmak
dzieki za pomoc, teraz smiga z milo

Nie bede zakładał nowego tematu bo w zasadzie chodzi o te same linijki kodu. Chciałem trochę przebudować wygląd maila, dołączając do skryptu klase akusza CSS ale coś mi to nie działa. Próbowałem szukac rozwiązania ale jakoś nie moge znaleść dlatego pisze tutuaj

  1. <?php
  2. if (!$_POST['nick'] || !$_POST['mail'] || !$_POST['temat'] || !$_POST['tresc'])
  3. {
  4. echo "Nie uzupełniłeś wszystkich rubryk.";
  5. }
  6.  
  7. $wiadomosc =
  8. " <html><body>
  9. <table align='center'>
  10. <tr>
  11. <th colspan=2>Twój mail został wysłany. Poniżej znajdują się dane, które zostały podane w formularzu zgłoszeniowym. </th>
  12. </tr>
  13. <tr>
  14. <th >Imię: </th>
  15. <td>".$_POST['nick']."</td>
  16. </tr>
  17. <tr>
  18. <th >e-mail: </th>
  19. <td>".$_POST['mail']."</td>
  20. </tr>
  21. <tr>
  22. <th >Temat: </th>
  23. <td>".$_POST['temat']."</td>
  24. </tr>
  25. <tr>
  26. <th >Treść: </th>
  27. <td>".$_POST['tresc']." </td>
  28. </tr>
  29. </table> </body></html>";
  30.  
  31. $tematyka = "strona internetowa - ".$_POST['temat'];
  32.  
  33. $header .= 'From: '.$_POST['nick'] .'<'.$_POST['mail'].'>' . "\r\n";
  34. $header .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  35.  
  36. mail ("poczta@o2.pl", $tematyka, $wiadomosc, $header );
  37.  
  38. ?>


Chciałem dodać zewnetrzne obramowanie tej tabeli i kolor w środku ale nie pobiera wartości z pliku CSS a próbując wpisać wartości wewnatrz tagu table wywala mi błąd T_String systax error.
piotrooo89
forum to nie paser, sam poszukaj błędu składni.
trywalmak
Nooo ok. Mam na stronie normalne odwołanie do pliku CSS, a w samym pliku klasę wyglądającą mniej wiecej tak:
  1. .nazwa_klasy{
  2. background-color: #E7DDD1;
  3. border: 1px solid #7F1F00;
  4. width: 80%;
  5. }

Wpisując w <table> :
  1. <table class='nazwa_klasy'>

Wysyłany mail w ogole nie pobiera wartości zdefiniowanych w arkuszu. A nie wiem jak wpisać w ten tag <table> dane wartości określające wygląd tej tabeli. Jak juz wczesniej pisałem pytam sie tutaj bo nie moge znalesc odpowiedzi ani bledu ktory robie.

Nie wiem jak mam zrobić obramówkę tabeli tylko zewnętrzną, bo cos takiego niedziala :/

  1. <table bgcolor='#D4BFAA' border='1px' border-style='outset' bordercolor='#D49F55'>
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.