Hey Folks!
Bin neu hier und nutze PHP wirklich sehr selten, daher sind meine Kenntnisse echt nur grundlegend.
Bisher habe ich noch alles irgendwie zum laufen gebracht,
aber jetzt beschwert sich mein webhoster, dass ein kontaktformular per email-injection für spam missbraucht wird.
Hier mein Code nachdem ich ihn jetzt angepasst habe, allerdings scheint er immernoch nicht sicher zu sein.
Könnt Ihr mir weiterhelfen und mir einen guten Tipp geben wie ich den Missbrauch verhindern kann?
Vielen Dank!
[edit: code so besser?]
Bin neu hier und nutze PHP wirklich sehr selten, daher sind meine Kenntnisse echt nur grundlegend.
Bisher habe ich noch alles irgendwie zum laufen gebracht,
aber jetzt beschwert sich mein webhoster, dass ein kontaktformular per email-injection für spam missbraucht wird.
Hier mein Code nachdem ich ihn jetzt angepasst habe, allerdings scheint er immernoch nicht sicher zu sein.
Könnt Ihr mir weiterhelfen und mir einen guten Tipp geben wie ich den Missbrauch verhindern kann?
Vielen Dank!
PHP-Code:
## Post-variablen aus dem Formular werden geholt...
if($form=="1"){ ## Check ob das Formular abgeschickt wurde und man
nicht irgendwie anders auf die "send" Seite gelangt ist.
if(eregi("\r",$email) || eregi("\n",$email) || eregi("\r",$name) ||
eregi("\n",$name) || eregi("\r",$telefon) || eregi("\n",$telefon) ||
eregi("\r",$text) || eregi("\n",$text)){
## Neu hinzugefügte Schleife, habe allerdings nicht das gefühl dass sie was bringt..
echo "<center><font face=Verdana size=2 color=#000000>
Das Formular wurde <strong>nicht</strong> abgeschickt.";
die("DIE!");
}else{
if($name!="" && $email!="" && $telefon!="" && $text!=""){
$message = "Als Name wurde angegeben: \"".$name."\"\n
Als Email: \"".$email."\"\nTelefonnummer: \"".$telefon."\"\n\nAnfrage:\n".$text;
$to = "email@blabla.bla";
$subject = "Kontaktformular auf [url]www.blabla.bla[/url]";
$headers = "From: ".$email."\nReply-To: ".$email."\n";
mail($to,$subject,$message,$headers);
echo "<center><font face=Verdana size=2 color=#000000>
Das Formular wurde abgeschickt.";
}else{
## ... hier kommen dann die else schleifen mit den benachrichtigungen..
(nicht vollständig ausgefüllt.. ) etc pp..
Kommentar