Jonathan: Mailscript schützen gegen Hack-Attacken???

Beitrag lesen

Hallo,

$nameeingabe = preg_replace("/[\<>.$?"\n]/", "", $nameeingabe);

Das sieht schon ganz in Ordnung aus. Ich bin mir aber nicht sicher, ob du wirklich alles Escapen musst und ob die Quotes um dem Rexexp wirklich sinnvoll sind.

Es wäre viel sinnvoller, wenn du den Inhalt erst einmal ein einer Variablen speichern würdest und diese dann an die mail-Funktion übergibst.

Das habe ich immer noch nicht verstanden...

Das liegt vermutlich daran, dass du nicht viel Erfahrunf hast und du recht unsauber programmierst. Eigentlich dürften die inhalte von Formularen nämlich nicht direkt als Variable bereitgestellt werden (das ist nur bei Fehlkonfigurierten und/oder älteren Servern so) sondern müssen über ein globales Array wie $_GET[] oder $_POST[] abgefragt werden.

Das sähe dann so z.B. stark vereinfacht so aus:

  
var $nachricht=$_GET["Nachricht"]; //bzw. $_POST wenn du ein Form mit method=post verwendest  
var $name=$_GET["Nameeingabe"]; //bzw. $_POST  
$nachricht = preg_replace(...);  
$name = preg_replace(...);  
mail(...);  

(Achtung, Ungetestet...)

Jonathan