Aus gesundheitlichen Gründen kann ich diese Seite nicht weiterpflegen, aktualisieren oder euch Support für eure PHP-Probleme anbieten. PHP für dich bleibt aber in seiner aktuellen Form erhalten und funktioniert nach wie vor als Einstieg in die PHP-Welt - gerade, wenn dich technischere Anleitungen bisher immer davon abgehalten haben.
Mehr dazu...

PHP

Email...

... für dich.

Eine sehr praktische Funktion, ist die Mailfunktion innerhalb PHP. Damit kann man ohne Probleme ein Kontaktformular oder sogar einen (kleinen!) Newsletterservice realisieren.

! Achtung !
Die Mailfunktion funktioniert nicht auf jedem virtuellen Webserver, da diese häufig über keinen eigenen Mailserver verfügen. Du kannst den Mailversand dann aber problemlos auf deinem Webspace testen.


Die Funktion ist so aufgebaut:
mail(Empfängeremail, Betreff, Nachricht, "From: Absender <Absenderemail>");
Es ist dabei sinnvoll, alle Werte in Variablen zu speichern. Geschieht dies nicht, sind eMail-Adressen ohne Anführungszeichen und Texte in Anführungszeichen zu schreiben.

Das kann dann z. B. so aussehen:
<?php
$empfaenger = "email@domain.de";
$absendername = "Kontaktformular";
$absendermail = "email@domain.de";
$betreff = "PHP ist toll";
$text = "Hallo Claudia!
        $user war gerade auf deinen PHP-Seiten und 
        wollte dir sagen, dass sie ihm/ihr sehr gut
        gefallen.
        Wenn du mit ihm/ihr Kontakt aufnehmen 
        m&ouml;chtest, benutze bitte die Adresse $usermail.";
mail($empfaenger, $betreff, $text, "From: $absendername <$absendermail>");
?>
Die Leerzeichen um die Einrückung bei der Variable $text zu erzeugen, sind hier nur aus Übersichtlichkeitsgründen vorhanden. Sie würden so im Text übernommen werden und müssen daher im richtigen Einsatz weggelassen werden.

Die Eingabe des Textes kann durch ein Formular erfolgen, in dem der User seinen Namen und seine eMail-Adresse einträgt und das dann automatisch diese Mail versendet. Sinnvoll ist es natürlich, als Empfänger die eigene eMail-Adresse anzugeben bzw. die desjenigen, der die Mail bekommen soll.

Bedenke bitte, dass alles in PHP, wo Usereingaben möglich oder erforderlich sind - also auch Formulare - immer auch ein Sicherheitsrisiko birgt. Das ist allerdings ein sehr großes, umfangreiches Thema und geht weit über Einsteigerniveau hinaus. Daher meine Bitte: Bevor du dein E-Mail-Formular auf einer von anderen nutzbaren Seite einsetzt, beschäftige dich bitte mit dem Thema Sicherheit von PHP-Formularen.

Die Variablen user und usermail, die im Mailtext ausgegeben werden, werden dabei durch das Formular festgelegt - alle anderen werden selbst angeführt.

Achtung! Immer mehr Server verschicken aus Sicherheitsgründen Mails nur dann, wenn die Absenderadresse tatsächlich auf dem Server angelegt ist. Du kannst daher nicht einfach den im Formular angegebenen Absender als "From" angeben, sondern musst deine eigene Mailadresse dort eintragen, indem du eine extra Variable für die Absender-Mail-Adresse definierst. Alternativ kannst du natürlich auch die Empfänger-Mail-Adresse als Absenderadresse benutzen.

Durch weitere Parameter ist es mit dieser Funktion auch möglich HTML-Mails zu versenden.
<?php
$extra = "From: $absendername <$absendermail>\n";
$extra .= "Content-Type: text/html\n";
$extra .= "Content-Transfer-Encoding: 8bit\n";
mail($empfaenger, $betreff, $text, $extra);
?>
Hierbei werden die Variablen des Absenders in der Variable extra abgespeichert. Wichtig ist das \n am Ende der Variable (dadurch wird eine Zeilenumbruch erzeugt). Danach wird mit .= ein weiterer Wert an die Variable angehängt, der den Content-Type - bei uns also text/html - angibt. Dieser muss genau so übernommen werden. Anschließend benötigen wir noch Content-Transfer-Encoding. Auch diesen verwendest du bitte wie oben angegeben. Dadurch wird aus einer Mail eine HTML-Mail.

Der Text der Nachricht muss in dem Fall mittels HTML formatiert werden, reine Zeilenumbrüche funktionieren z. B. nicht!

Beachte aber bitte, dass Text-Mails zum einen beliebter sind als HTML-Mails und dass zum anderen die Programmierung einfacher ist, wenn du nur Text-Mails verwendest :-)

Als nächstes zeige ich dir die Vorteile von Includes.

Autor: Claudia Unkelbach


Spenden via PayPal

=> Weiter
© 2001 - 2024 Claudia Unkelbach
Gießener Straße 75, 35396 Gießen