Czy ta funkcja mail () jest bezpieczna od wtrysku nagłówka?
Buduję prosty formularz kontaktowy dla strony internetowej. Nie łączy się z bazą danych, po prostu wysyła wiadomość e-mail. Czy ten kod uniemożliwi spamerom korzystanie z zastrzyków nagłówka? Czy są jakieś luki, których nie widzę?
//create short variable names
$name= filter_var($_POST['Name'],FILTER_SANITIZE_STRING);
$email= filter_var($_POST['Email'],FILTER_SANITIZE_STRING, FILTER_VALIDATE_EMAIL);
$subject= filter_var($_POST['Subject'],FILTER_SANITIZE_STRING);
$message= filter_var($_POST['Message'],FILTER_SANITIZE_STRING);
//set up some static information
$toaddress = '[email protected],[email protected]';
$mailcontent = "Customer name: ".$name."\n".
"Customer email: ".$email."\n".
"Subject: ".$subject."\n\n".
$message;
$fromaddress = "From:" . $email;
//invoke mail() function to send mail
mail($toaddress, "Website Contact Form",$mailcontent, $fromaddress);
?>