Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]formularz kontaktowy - zmiana kodowania
kidler
post
Post #1





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


Witam. Mam taki formularz:
  1. <?php
  2. header('Content-type: text/html; charset=ISO-8859-2');
  3.  
  4. // sprawdzamy, czy zmienna $submit jest pusta
  5. if (empty($_POST['submit'])) {
  6. // wyświetlamy formularz
  7. echo " <table border="0"><form method="post">
  8. <tr>
  9. <td>Nick:</td>
  10. <td><input type="text" name="imie" style="width: 250px"></td>
  11. </tr>
  12. <tr>
  13. <td>Twój e-mail:</td>
  14. <td><input type="text" name="email" style="width: 250px"></td>
  15. </tr>
  16. <tr>
  17. <td>Tamat:</td>
  18. <td><select size="1" name="temat">
  19. <option>Problem</option>
  20. <option>Opinia</option>
  21. <option>Reklama</option>
  22. <option>Przypomnienie hasła</option>
  23. <option>Inne</option>
  24. </select></td>
  25. </tr>
  26. <tr>
  27. <td>Treść wiadomości:</td>
  28. <td><textarea name="tresc" style="width: 250px; height: 100px"  ></textarea></td>
  29. </tr>
  30. <tr>
  31. <td>&nbsp;</td>
  32. <td><input type="submit" name="submit" value="Wyślij">&nbsp;
  33. <input type="reset" value="Wyczyść"></td></form>
  34. </tr>
  35. </table>";
  36. }
  37. // sprawdzamy, czy zmienne przes?ane z formularza nie są puste
  38. elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['temat']) && !empty($_POST['email'])) {
  39. // je?eli powy?szy warunek jest spe?niony tworzona jest wiadomoś?
  40. // zmienna $message zawiera treś? wiadomości
  41. $message = "n$_POST[tresc]";
  42. // zmienna $header zawiera przede wszystkim adres zwrotny
  43. $header = "From: $_POST[imie] <$_POST[email]>";
  44. // funkcja mail() za pomocą której wiadomoś? zostanie wys?ana
  45. @mail("onet@onet.pl","$_POST[temat]","$message","$header")
  46. or die('Nie udało się wysłać wiadomości');
  47. // wyświetlenie komunikatu w przypadku powodzenia
  48. echo "<div align="center"><strong>Wiadomość została wysłana poprawnie!</strong></div>";
  49. }
  50. // lub w przypadku nie wypełnienia formularza do końca
  51. else echo "Wypełnij wszystkie pola formularza!";
  52.  
  53. ?>


Jak zrobić by formularz wysyłał treść w utf-8 a tekst an stronie wyświetlał się normalnie w ISO-8859-2? Z góry dzięki za odp.

Ten post edytował kidler 3.06.2007, 21:00:44
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #2





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

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


Dodaj nagłówek do maila:

  1. <?php
  2. $header = "Content-Type: text/plain; charset=UTF-8n";
  3. ?>


więcej http://pl.php.net/manual/pl/ref.mail.php

Ten post edytował LonelyKnight 3.06.2007, 19:44:05


--------------------
Good programming is 99% sweat and 1% coffee.
Make it idiot proof and someone will make a better idiot...
Go to the top of the page
+Quote Post
kidler
post
Post #3





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


To jest an samej górze ale jak zmienię tam na utf 8 to i wszystkie znaki na stronie będą w utf 8, a ja chcę żeby an stronie pozostały znaki w iso
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #4





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

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


Patrzyłeś chociaż na ten link, który podałem? smile.gif

Nie o ten header chodzi. Na górze zostaw tak jak masz a do maila dołącz taki jak podałem. W manualu masz przykłady. Szybciej będzie zerknąć niż pytać i czekać aż ktoś odp.


--------------------
Good programming is 99% sweat and 1% coffee.
Make it idiot proof and someone will make a better idiot...
Go to the top of the page
+Quote Post
kidler
post
Post #5





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


patrzyłem i tak zrobiłem:
  1. <?php
  2. // sprawdzamy, czy zmienne przes?ane z formularza nie są puste
  3. elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['temat']) && !empty($_POST['email'])) {
  4. // je?eli powy?szy warunek jest spe?niony tworzona jest wiadomoś?
  5. // zmienna $message zawiera treś? wiadomości
  6. $header = "Content-Type: text/plain; charset=UTF-8n";
  7. $message = "n$_POST[tresc]";
  8. // zmienna $header zawiera przede wszystkim adres zwrotny
  9. $header = "From: $_POST[imie] <$_POST[email]> ";
  10. // funkcja mail() za pomocą której wiadomoś? zostanie wys?ana
  11. @mail("redakcja@efotek.pl","$_POST[temat]","$message","$header")
  12. or die('Nie udało się wysłać wiadomości');
  13. // wyświetlenie komunikatu w przypadku powodzenia
  14. echo "<div align="center"><strong>Wiadomość została wysłana poprawnie!</strong></div>";
  15. }
  16. ?>
i nic nie pomaga
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #6





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

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


Nadpisujesz header, zamiast:

  1. <?php
  2. $header = "Content-Type: text/plain; charset=UTF-8n";
  3. $header = "From: $_POST[imie] <$_POST[email]> ";
  4. ?>


daj:

  1. <?php
  2. $header = "Content-Type: text/plain; charset=UTF-8n";
  3. $header .= "From: $_POST[imie] <$_POST[email]> ";
  4. ?>


--------------------
Good programming is 99% sweat and 1% coffee.
Make it idiot proof and someone will make a better idiot...
Go to the top of the page
+Quote Post
kidler
post
Post #7





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


nie pomogło
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 Aktualny czas: 19.08.2025 - 03:46