Tach!
was meinst du mit Zielkontextanpassung und Eingabe filtern?
Der Kontext ist hier die mail()-Funktion. Solange du da keine HTML-Mail schickst, ist das Format dieser Mail Plaintext. Da gibt es nichts, was angepasst werden muss. Allerdings nimmt die Funktion neben dem Mailtext auch noch andere Parameter entgegen.
Der Empfänger: ist bei dir ein fest kodierter Wert, alles bestens. Ansonsten gilt dasselbe wie beim Betreff.
In den Betreff schreibst du eine Nutzereingabe und die landet in den Headerzeilen. Das ist aber kein Problem, weil da alle nichtdruckbaren Zeichen von PHP gefiltert werden.
Der Inhalt der Mail unterliegt keinen Beschränkungen.
Die zusätzlichen Headerzeilen allerdings sind kritisch. Du musst da selbst die Zeilen bilden. Und nun kommt jemand daher und gibt als seine Mailadresse "foo@example.com\r\nCc: Liste_mit_Adressen" an. Und damit hast du eine Spamschleuder gebaut.
Du musst prüfen, ob in dem Wert \r
oder \n
enthalten sind. Wenn ja, kannst und solltest du die weitere Verarbeitung des Scripts abbrechen. Du brauchst auch keine Fehlermeldung zu antworten, die liest eh kein Bot.
Im Kontextwechsel-Artikel gibt es auch einen Abschnitt zur E-Mail für ausführliche Information.
dedlfix.