Skip to content

Commit c335d03

Browse files
committed
mail mit utf8
1 parent df019ae commit c335d03

File tree

2 files changed

+42
-8
lines changed

2 files changed

+42
-8
lines changed

php/mail/index.html

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@ <h2 class="title" id="slide-0">
5353
<div id="slide-1" title="Folie Nr. 1"></div><p>Die Funktion zum Senden von E-Mail heißt mail:</p>
5454

5555
<div class="example">
56-
<pre><code class="language-php linenums">mail(
57-
&quot;bjelli@horus.at&quot;,
58-
&quot;Just another SPAM&quot;,
56+
<pre><code class="language-php linenums">mail(
57+
&quot;bjelli@horus.at&quot;,
58+
&quot;Just another SPAM&quot;,
5959
&quot;Das ist der Text in der E-Mail&quot;
6060
);
6161
</code></pre></div>
@@ -67,11 +67,28 @@ <h2 class="title" id="slide-0">
6767
Lieber Newsletter-Kunde!
6868
wir freuen uns, dass Sie unseren
6969
Newsletter zum Thema $thema
70-
abonniert haben.
70+
abonniert haben.
7171
Ende;
7272
mail(&quot;bjelli@horus.at&quot;, &quot;Just another $thema-Newsletter&quot;, $text);
7373
</code></pre></div>
7474

75+
<p>Wenn man englische Überschriften und Texte versendet ist das schon gut genug.
76+
Für andere Sprachen und Emojis braucht man encoding für die Überschrift
77+
und ein paar zusätzliche Header:</p>
78+
79+
<div class="example">
80+
<pre><code class="language-php linenums">function mail_utf8($to, $subject, $message)
81+
{
82+
$encoded_subject = &quot;=?UTF-8?B?&quot; . base64_encode($subject) . &quot;?=&quot;;
83+
$headers = [
84+
&quot;MIME-Version: 1.0&quot;,
85+
&quot;Content-Type: text/plain; charset=utf-8&quot;,
86+
&quot;Content-Transfer-Encoding: 8bit&quot;
87+
];
88+
return mail($to, $encoded_subject, $message, implode(&quot;\r\n&quot;, $headers));
89+
}
90+
</code></pre></div>
91+
7592
<p>Wie die Mail vom PHP-Interpreter versandt wird, ist in der PHP- Konfiguration festgelegt. Die Konfigurations-Datei hat den Namen php.ini. Wenn man PHP auf dem eigenen Computer betreibt, kann man den SMTP-Server des Providers eintragen um die ausgehende Mail über diesen Server zu versenden:</p>
7693

7794
<div class="example">

php/mail/slide.html

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,9 @@ <h1>PHP und E-Mail</h1>
8989
<div class="slide"><p>Die Funktion zum Senden von E-Mail heißt mail:</p>
9090

9191
<div class="example">
92-
<pre><code class="language-php linenums">mail(
93-
&quot;bjelli@horus.at&quot;,
94-
&quot;Just another SPAM&quot;,
92+
<pre><code class="language-php linenums">mail(
93+
&quot;bjelli@horus.at&quot;,
94+
&quot;Just another SPAM&quot;,
9595
&quot;Das ist der Text in der E-Mail&quot;
9696
);
9797
</code></pre></div>
@@ -103,11 +103,28 @@ <h1>PHP und E-Mail</h1>
103103
Lieber Newsletter-Kunde!
104104
wir freuen uns, dass Sie unseren
105105
Newsletter zum Thema $thema
106-
abonniert haben.
106+
abonniert haben.
107107
Ende;
108108
mail(&quot;bjelli@horus.at&quot;, &quot;Just another $thema-Newsletter&quot;, $text);
109109
</code></pre></div>
110110

111+
<p>Wenn man englische Überschriften und Texte versendet ist das schon gut genug.
112+
Für andere Sprachen und Emojis braucht man encoding für die Überschrift
113+
und ein paar zusätzliche Header:</p>
114+
115+
<div class="example">
116+
<pre><code class="language-php linenums">function mail_utf8($to, $subject, $message)
117+
{
118+
$encoded_subject = &quot;=?UTF-8?B?&quot; . base64_encode($subject) . &quot;?=&quot;;
119+
$headers = [
120+
&quot;MIME-Version: 1.0&quot;,
121+
&quot;Content-Type: text/plain; charset=utf-8&quot;,
122+
&quot;Content-Transfer-Encoding: 8bit&quot;
123+
];
124+
return mail($to, $encoded_subject, $message, implode(&quot;\r\n&quot;, $headers));
125+
}
126+
</code></pre></div>
127+
111128
<p>Wie die Mail vom PHP-Interpreter versandt wird, ist in der PHP- Konfiguration festgelegt. Die Konfigurations-Datei hat den Namen php.ini. Wenn man PHP auf dem eigenen Computer betreibt, kann man den SMTP-Server des Providers eintragen um die ausgehende Mail über diesen Server zu versenden:</p>
112129

113130
<div class="example">

0 commit comments

Comments
 (0)