Hi ihr,
welche Möglichkeiten gibt es, ein Kontaktformular sicher zu machen? Also damit es niemand dazu verwenden kann, irgendwelche Spammails zu schicken?
Ich verwende in meinem Kontaktformular htmlspecialchars für alle eingegebenen Werte (Name, E-Mail und Text). Die E-Mail-Adresse wird auch auf Gültigkeit überprüft (@ ja/nein und . ja/nein).
Das funktioniert soweit auch.
Nachdem ich heute früh allerdings an die 300 Mails in meinem Postfach hatte, muss da aber doch noch was anderes falsch sein oder?
Es kommen auch ständig weitere Mails rein, dass ich weiß nicht wie viele 1000 E-Mail-Adressen nicht erreicht wurden. Normalerweise kriegt der, der das Kontaktformular nutzt, nämlich noch eine Kopie seiner Nachricht. Aber wenn die E-Mail-Adresse nicht existiert, dann kommt das alles ja wieder zurück.
Hab auch schon ausprobiert, was passiert, wenn jemand bei der E-Mail-Adresse was in der Art eingibt:
email@adresse.de\nBCC: anderemail@adresse.de
Wenn ich diese Mail erhalte, steht als Absender genau das drin, was ich hier oben geschrieben habe. Die E-Mail geht aber auch nur an die erste der beiden E-Mail-Adressen raus.
Wie kann trotzdem jemand das Formular zum Spams versenden missbrauchen?
Hier ist mal mein Code, der die HTML-Zeichen entfernt und die Mail-Adresse kontrolliert und letztendlich alles abschickt:
Bin für jede Hilfe dankbar.
Viele Grüße,
Ines
welche Möglichkeiten gibt es, ein Kontaktformular sicher zu machen? Also damit es niemand dazu verwenden kann, irgendwelche Spammails zu schicken?
Ich verwende in meinem Kontaktformular htmlspecialchars für alle eingegebenen Werte (Name, E-Mail und Text). Die E-Mail-Adresse wird auch auf Gültigkeit überprüft (@ ja/nein und . ja/nein).
Das funktioniert soweit auch.
Nachdem ich heute früh allerdings an die 300 Mails in meinem Postfach hatte, muss da aber doch noch was anderes falsch sein oder?
Es kommen auch ständig weitere Mails rein, dass ich weiß nicht wie viele 1000 E-Mail-Adressen nicht erreicht wurden. Normalerweise kriegt der, der das Kontaktformular nutzt, nämlich noch eine Kopie seiner Nachricht. Aber wenn die E-Mail-Adresse nicht existiert, dann kommt das alles ja wieder zurück.
Hab auch schon ausprobiert, was passiert, wenn jemand bei der E-Mail-Adresse was in der Art eingibt:
email@adresse.de\nBCC: anderemail@adresse.de
Wenn ich diese Mail erhalte, steht als Absender genau das drin, was ich hier oben geschrieben habe. Die E-Mail geht aber auch nur an die erste der beiden E-Mail-Adressen raus.
Wie kann trotzdem jemand das Formular zum Spams versenden missbrauchen?
Hier ist mal mein Code, der die HTML-Zeichen entfernt und die Mail-Adresse kontrolliert und letztendlich alles abschickt:
PHP:
$nachricht = htmlspecialchars("$nachricht", ENT_QUOTES);
$nachrichtUser = htmlspecialchars("$nachrichtUser", ENT_QUOTES);
$name = htmlspecialchars("$name", ENT_QUOTES);
$email = htmlspecialchars("$email", ENT_QUOTES);
if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email))
{
if($name != "" AND $email != "" AND $nachricht != "")
{
mail($empfaenger, $betreff, $nachricht, "From: $name <$email>");
mail($email, $betreffUser, $nachrichtUser, "From: $absenderName <$absender>");
echo '<meta http-equiv="refresh" content="1; URL=index.php?section=kontaktan">';
}
else
{
echo '<meta http-equiv="refresh" content="1; URL=index.php?section=fehler">';
}
}
else
{
echo '<meta http-equiv="refresh" content="1; URL=index.php?section=fehleremail">';
}
Bin für jede Hilfe dankbar.
Viele Grüße,
Ines