Riko 2 Odesláno: 20. Srpen, 2017 Share Odesláno: 20. Srpen, 2017 Zdravím komunitu Pawna.cz. Měl bych dotaz protože si fakt nevím rady, jak na to. Na OS Linux s postfixem potřebuji odesílat maily. To funguje. Problém je ale někde jinde. Potřebuji vědět, proč mi tento kód neodesílá mail ve formátu HTML ale odesílá ho jako prostý text function sendmail($to,$subject,$message,$from = "[email protected]"){ $predmet = mime_header_encode($subject); $autor = mime_header_encode("SA-MP Reálný Život"); $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $headers .= 'Content-Transfer-Encoding: 8bit'. "\r\n"; $headers .= 'From: '.$autor.' <'.$from.'>' . "\r\n"; mail($to,$predmet,$message,$headers); } Zde je chybějící $message, která se nachází v jiném souboru: $content .= "<html> <body> <h2>Registrace</h2> Děkujeme za vaší registraci.<br /> Pro potvrzení a aktivaci vašeho účtu klikněte na následující odkaz:<br /><br /> <a href='".DEF_WEBURL."account_verify/$random_key' target='_blank'>".DEF_WEBURL."account_verify/$random_key</a><br /><br /> <h3>".DEF_SITENAME."</h3> <h4>".DEF_WEB."</h4> </body> </html>"; mail($_POST['v1'],"Registrace Reálný Život",$content,"From: [email protected]"); Tento email odesílá ve formátu HTML, proč tomu tak je? Díky. <?php $to = '[email protected]'; $subject = 'Website Change Reqest'; $headers = "From: Reálný Život <[email protected]>\r\n"; $headers .= "Reply-To: ". strip_tags($_POST['req-email']) . "\r\n"; $headers .= "CC: [email protected]\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $message = '<p><strong>This is strong text</strong> while this is not.</p>'; mail($to, $subject, $message, $headers); php?> Již funguje zapsáním kódu $content .= "<html> <body> <h2>Registrace</h2> Děkujeme za vaší registraci.<br /> Pro potvrzení a aktivaci vašeho účtu klikněte na následující odkaz:<br /><br /> <a href='".DEF_WEBURL."account_verify/$random_key' target='_blank'>".DEF_WEBURL."account_verify/$random_key</a><br /><br /> <h3>".DEF_SITENAME."</h3> <h4>".DEF_WEB."</h4> </body> </html>"; $headers = "From: Reálný Život <[email protected]>\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; mail($_POST['v1'],"Registrace Reálný Život",$content,$headers); redirect("?registered"); Sice nechápu, proč to dříve fungovalo a teď to nefunguje, ale budiž. Díky. Link to comment Share on other sites More sharing options...
0 Administrátor Ewwe 434 Odesláno: 20. Srpen, 2017 Administrátor Share Odesláno: 20. Srpen, 2017 Umí tvůj klient zobrazovat html emaily? Nemáš to přepnuté ? Případně zkus nějakou knihovnu než jen plain funkci. Link to comment Share on other sites More sharing options...
0 The hidden face 77 Odesláno: 20. Srpen, 2017 Share Odesláno: 20. Srpen, 2017 (upraveno) Máš vytvořenou vlastní funkci (sendmail): function sendmail($to,$subject,$message,$from = "[email protected]"){ $predmet = mime_header_encode($subject); $autor = mime_header_encode("SA-MP Reálný Život"); $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $headers .= 'Content-Transfer-Encoding: 8bit'. "\r\n"; $headers .= 'From: '.$autor.' <'.$from.'>' . "\r\n"; mail($to,$predmet,$message,$headers); } ALE tvůj obsah, který máš v jinačím souboru odesíláš funkcí mail, kde do hlavičky uvádíš pouze "From: [email protected]". Žádné informace o tom co odesíláš.. to vše řeší ta tvá předvytvořená funkce, kterou nevědomky nepoužíváš... $content .= "<html> <body> <h2>Registrace</h2> Děkujeme za vaší registraci.<br /> Pro potvrzení a aktivaci vašeho účtu klikněte na následující odkaz:<br /><br /> <a href='".DEF_WEBURL."account_verify/$random_key' target='_blank'>".DEF_WEBURL."account_verify/$random_key</a><br /><br /> <h3>".DEF_SITENAME."</h3> <h4>".DEF_WEB."</h4> </body> </html>"; sendmail($_POST['v1'],"Registrace Reálný Život",$content,"From: [email protected]"); //tady stačí změnit funkci mail na tvojí sendmail, samozřejmě ta funkce sendmail musí být includnutá v tom souboru Druhý kód ti funguje kvůli tomu, že máš správně zapsanou hlavičku, jelikož ji zapisuješ rovnou a ne přes svojí funkci (která by ji měla také správně, ale zapomněl jsi na ni ), takže se HTML zobrazuje korektně. Edited 20. Srpen, 2017 by GaRGoyLeS 1 Link to comment Share on other sites More sharing options...
Dotaz
Riko 2
Zdravím komunitu Pawna.cz.
Měl bych dotaz protože si fakt nevím rady, jak na to.
Na OS Linux s postfixem potřebuji odesílat maily. To funguje. Problém je ale někde jinde.
Potřebuji vědět, proč mi tento kód neodesílá mail ve formátu HTML ale odesílá ho jako prostý text
Zde je chybějící $message, která se nachází v jiném souboru:
Tento email odesílá ve formátu HTML, proč tomu tak je? Díky.
Již funguje zapsáním kódu
Sice nechápu, proč to dříve fungovalo a teď to nefunguje, ale budiž.
Díky.
Link to comment
Share on other sites
2 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now