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öchtest, benutze bitte die Adresse $usermail.";
mail($empfaenger, $betreff, $text, "From: $absendername <$absendermail>");
?>
Alles anzeigen
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. Bezüglich Sicherheitsrisiken bei eMail-Versand über Formulare, wirf bitte einen Blick auf die sehr gute Seite von Daniel Fett.
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.