[php-src] Issue #8870: PHP mail() is not HTML-formatted

From: Date: Sat, 25 Jun 2022 13:21:39 +0000
Subject: [php-src] Issue #8870: PHP mail() is not HTML-formatted
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-241807@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/8870 Author: nico-apps ### Description The following code: ```php $from_name = "Montemanager Elternarbeit"; $from_address = "elternarbeit@montemanager.de"; $mime_boundary = "---" . md5(time()); $code = strval(rand(0, 9)) . strval(rand(0, 9)) . strval(rand(0, 9)) . strval(rand(0, 9)) . strval(rand(0, 9)) . strval(rand(0, 9)); $headers = "From: ".$from_name." <".$from_address.">\n"; $headers .= "Reply-To: ".$from_name." <".$from_address.">\n"; $headers .= "MIME-Version: 1.0\n"; $headers .= "Content-Type: text/html; charset=UTF-8\n"; $headers .= "Content-Transfer-Encoding: 8bit\n\n"; $message = "<div style='background-color:#d1e7dd'><h1 style='background-color:#498f1e; color:white'>Ihr Verifizierungscode</h1><br><h3>Vielen Dank, dass Sie das Elternarbeits-Tool verwenden.</h3><br><p>Sie haben versucht, Ihr Passwort auf der <a href='https://montemanager.de/elternarbeit-rc1..php'>Montemanager Elternarbeit Webseite</a> zu &auml;ndern. Daf&uuml;r ben&ouml;tigen wir jedoch einen Code zur Verifizierung Ihrer E-Mail Adresse. <b>Bitte geben Sie auf der ge&ouml;ffneten Seite</b> den folgenden Code ein:<br><br><h1>$code</h1><br><!--Sollten Sie die Seite aus Versehen geschlossen haben, k&ouml;nnen Sie sie <a href='https://montemanager.de/elternarbeit-rc1.php?changePassword'>hier</a> erneut aufrufen. --><br><br><u>Sollten Sie diesen Vorgang nicht beantragt haben,</u> k&ouml;nnen Sie diese E-Mail ignorieren.</p><br><br><div style='text-align: center'><img src='https://montemanager.de/favicon.ico'></img><small><br>Montemanager Elternarbeit<br>Version 0.4<br>Programmiert von Nico Marikucza</small></div>"; if (mail($this->b, "Ihr Verifizierungscode", $message, $headers)) { ... ``` Resulted in this output: ![grafik](https://user-images.githubusercontent.com/35093969/175774836-030dc5b0-f8fb-4408-a9ad-bb102966cc72.png) But I expected this output instead: ![grafik](https://user-images.githubusercontent.com/35093969/175774870-fa7a47b0-19e9-4c10-a351-30df7a17f796.png) Note: Executing the same code under PHP 7.4.30 on the same machine results in the expected output, which I found to be quite weird, as the docs didn't declare any differences between those two versions in this case. ### PHP Version PHP 8.1.7 ### Operating System Debian 11 (bullseye)

« previous php.bugs (#241807) next »