Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] wysylanie emaili w formacie HTML
piteerus
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 22.11.2006

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


mam oto taki skrypt wlasnej roboty:
  1. <?php
  2. // utworzenie krotkich nazw
  3. $name = trim($_POST['name']);
  4. $tekst = trim($_POST['tekst']);
  5. $email = trim($_POST['email']);
  6. $telefon = trim($_POST['telefon']);
  7.  
  8. // adres wlasciciela strony
  9. $do = adres@serwer.pl';
  10.  
  11. // nagłówki
  12. $naglowki = 'Reply-to: moj@mail.pl <moj@mail.pl>'."rn";
  13. $naglowki .= 'From: moj@mail.pl <moj@mail.pl>'."rn";
  14. $naglowki .= 'MIME-Version: 1.0'."rn";
  15. $naglowki .= 'Content-type: text/html; charset=iso-8859-2'."rn";
  16.  
  17. // temat wiadomosci
  18. $temat = 'Wiadomość ze strony www';
  19.  
  20. // wiadomosc
  21. $wiadomosc = '
  22. <html>
  23. <head>
  24. </head>
  25. <body>
  26. <p><b>to jest wiadomosc html</b></p>
  27. </body>
  28. </html>
  29. ';
  30.  
  31. // wyslanie maila
  32. if(mail($do, $temat, $wiadomosc, $naglowki))
  33. {
  34.  echo 'Wiadomość została wysłana';
  35. }
  36. ?>


skrypt wysyla wiadomosci ale nie w formacje html. otoz wszystko co powyzej lini "$naglowki .= 'MIME-Version: 1.0'."\r\n";" zostaje zalczone bez problemu wraz z ta linia, ale to co znajduje sie pozniej to tego nie zalacza w wiadomosci. nie wiem czemu sie tak dzieje. bez okreslenia Content type wiadomosc wysylana jest jako zwykly tekst a mnie jest potzrebny html. czy ktos ma jakis pomysl jak to rozwiazac?

Ten post edytował piteerus 22.11.2006, 14:00:30
Go to the top of the page
+Quote Post
wipo
post
Post #2





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


A użyj zamiast ' tego "
Go to the top of the page
+Quote Post
dziobak
post
Post #3





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 22.11.2006

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


a gdzie jest znacznik
z tego co mi wiadomo jest on chyba wymagany.... mozesz tez w head dodac <meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> sprobuj dodac te dwie rzeczy
Go to the top of the page
+Quote Post
piteerus
post
Post #4





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 22.11.2006

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


obie propozycje nie dzialaja. jak zamieniam cudzyslowy z pojednyczych ' na podwojne " to w ogole nic nie dziala. jak dorzucam kodowanie do naglowka w liscie tez nie dziala. chyba nie pozostaje mi nic innego jak tyklo zwykly tekst.
Go to the top of the page
+Quote Post
siemakuba
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 112
Pomógł: 20
Dołączył: 10.04.2005

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


Po ostatnim nagłówku powinny zdaje się być dwa znaki nowej linii. Lepiej też chyba zamiast pisać \r\n, co jest prawidłowe dla Windowsa, ale nie dla Unix czy Mac, użyć stałej PHP_EOL.

Sprawdź tak:

  1. <?php
  2. $naglowki = 'Reply-to: moj@mail.pl <moj@mail.pl>'.PHP_EOL;
  3. $naglowki .= 'From: moj@mail.pl <moj@mail.pl>'.PHP_EOL;
  4. $naglowki .= 'MIME-Version: 1.0'.PHP_EOL;
  5. $naglowki .= 'Content-type: text/html; charset=iso-8859-2'.PHP_EOL.PHP_EOL;
  6. ?>


BTW, czy nie lepiej skorzystać z gotowego i prostego w użyciu rozwiązania? PHPMailer
pozdr.

Ten post edytował siemakuba 23.11.2006, 12:21:44
Go to the top of the page
+Quote Post
piteerus
post
Post #6





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 22.11.2006

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


W koncu dziala!! dzieki!
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: 23.08.2025 - 22:36