Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] mail() , a odbior w outlook... mail nie widziany jako kod HTML
Forum PHP.pl > Forum > Przedszkole
madoxx
po odbiorze poczty wysłanej przez stronę, w outloku jest widziana jako zwykły tekst a nie jako kod HTML, sprawdziłem outlooka i jego ustawienia wszystko jest wporządku.

bo gdy wysłałem do siebie z outlooka wiadomosc HTML, wszystko było wporządku.
kossa
To znaczy że nie wysłałeś ze strony wiadomości w postaci html - dodaj odpowiednie nagłówki w funkcji mail" title="Zobacz w manualu PHP" target="_manual - w komentarzach w manualu masz napisane jak to zrobić a na forum uzyj wyszukiwarki - wpisz mail - znajdziesz

Łukasz
madoxx
mam takie cos , bo gdy odbieram maila, przez stronkę.. w o2.pl czy w interii czy gdziekolwiek, wtedy wiadomosc jest ładna i kod jest OK
kossa
Pokaż kod jakim generujesz wiadomość email.
madoxx
  1. <?php
  2. $message = 
  3. <HTML><HEAD>
  4. <META http-equiv=Content-Type content='text/html; charset=iso-8859-2'>
  5. </HEAD>
  6. <BODY>
  7. <center> <p style='font-family: arial; '>
  8. <B> wiadomości </B>
  9. </BODY></HTML>
  10.  
  11. $naglowki .= "MIME-Version: 1.0r&#092;n";
  12. $naglowki .= "Content-type: text/html; charset=iso-8859-1r\n";
  13. mail($TO, $subject, $message, $naglowki);
  14. ?>
madoxx
problem rozwiązałem używając phpmailer().
no ale ciekawi mnie co jest nie tak z tym mail(), bo z mail mam tyle dobrze ze nie bawię sie z smtp, loginem i hasłem, ale z drugiej strony, wiadmosci traktowane są jak spam.
madoxx
no jednak problem dalej istnieje tyle ze inny,
bo w phpmailer () mamy nagłówke From, jako mój adres email.
a rzecz w tym, ze po wypelnieniu formualrza, w nagłówku ma byc adres, tego kto wypełniał by mozna było mu odpisac.
wiec teraz co z tym problemem
drPayton
W formularzu do wysyłania maila musisz więc dać pole, w kótrym wypełniający poda swój adres zwrotny email. Wtedy, przy obróbce danych odebranych z formularza:
  1. <?php
  2. $mail = new PHPMailer();
  3. (...)
  4. $mail->From = $_POST['email'];
  5. (...)
  6. $mail->Send()
  7. ?>
kossa
Cytat(madoxx @ 9.11.2007, 17:25:27 ) *
  1. <?php
  2. $message = 
  3. <HTML><HEAD>
  4. <META http-equiv=Content-Type content='text/html; charset=iso-8859-2'>
  5. </HEAD>
  6. <BODY>
  7. <center> <p style='font-family: arial; '>
  8. <B> wiadomości </B>
  9. </BODY></HTML>
  10.  
  11. $naglowki .= "MIME-Version: 1.0r&#092;n";
  12. $naglowki .= "Content-type: text/html; charset=iso-8859-1r\n";
  13. mail($TO, $subject, $message, $naglowki);
  14. ?>


tu są błędy bo po </html> nie ma "; ale uznajmy że to coś źle skopiowałeś

meil nie wysyłał się poprawnie bo masz obie linie z nagłówkami źle zadeklarowane bo jeśli coś pierwszego nagłówka nie możesz dokleić do zmiennej $header bo taka jeszcze nie istnieje, czyli tam kropka jest nie na miejscu i kodowanie iso-8859-2, powinno być:

  1. <?php
  2. $naglowki = "MIME-Version: 1.0r\n";
  3. $naglowki .= "Content-type: text/html; charset=iso-8859-2r\n";
  4. ?>


Łukasz
Gigakomputer
Php oferuje nam szereg możliwości łączenia kodu HTML z PHP. Jedną z nich jest:
Kod
<?php

echo <<<HTML
tutaj możesz umieścić cały kod html nie zwracając na nic uwagi :P
HTML;

?>
Wypróbujcie tę metodę a powinno pomóc smile.gif POWODZENIA!
madoxx
Cytat(drPayton @ 9.11.2007, 19:38:50 ) *
W formularzu do wysyłania maila musisz więc dać pole, w kótrym wypełniający poda swój adres zwrotny email. Wtedy, przy obróbce danych odebranych z formularza:
  1. <?php
  2. $mail = new PHPMailer();
  3. (...)
  4. $mail->From = $_POST['email'];
  5. (...)
  6. $mail->Send()
  7. ?>


nie moge tam wstawić aby w tym miejscu pobierał mi adres osoby wypełniajacej formualrz,
bo wtedy phpmailer zwróci mi bład ze adres nadawcy jest zły.
no bo chyba tam musi być wpisany, adres , zgodny z kontem smtp z którego wysłam poczte.

ja mam podobnie jak tu.

  1. <?php
  2. $mail->PluginDir = "phpmailer/";
  3. $mail->From = "NASZE@KONTO"; //adres naszego konta
  4. $mail->FromName = "phpMailer tester";//nagłówek From
  5. $mail->Host = "NASZ.SERWER.SMTP";//adres serwera SMTP
  6. $mail->Mailer = "smtp";
  7. $mail->Username = "tester@KONTO";//nazwa użytkownika
  8. $mail->Password = "HASLO";//nasze hasło do konta SMTP
  9. ?>
drPayton
A nawet nie wiem, bo z tego nie korzystam. Ale za to możesz na pewno skorzystać z:
  1. <?php
  2. $mail->AddReplyTo('email', 'nazwa');
  3. ?>
madoxx
dzieki to załatwiło sprawe
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.