Hi, For some reason mail() scripts on one server seem buggy. I change a line and they break or they work at one test and not the next day. Could someone give me advise on this script? Thanks!
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
function sanitize($content) {
$parsed = $content;
$parsed = trim($parsed);
//$parsed = preg_replace("/(%0A|%0D|\\n+|\\r+)/i", "|", $parsed);
//$parsed = preg_replace("/(content-type:|to:|cc:|bcc:)/i", "#", $parsed);
return $parsed;
}
if (isset($HTTP_POST_VARS['Submit'])) { // build mail message
unset($HTTP_POST_VARS['Submit']);
$Recipient = "Blipity blop <blee@foo.com>";
$Sender = "\"". sanitize($HTTP_POST_VARS['Name']) ."\" <". sanitize($HTTP_POST_VARS['Email']) .">"; // clean form values
$Subject = "[WWW Form] Newest form";
$Headers = "From: $Sender \r\n";
$Headers .= "Reply-To: $Sender \r\n";
$Headers .= "Return-Path: <$Recipient> \r\n";
$Headers .= "X-Mailer: PHP/" . phpversion();
$Body = "";
while (list($Key, $Value) = each($HTTP_POST_VARS)) {
if (!empty($Value)) {
$Body .= "\n\n$Key: \n\t";
$Body .= str_replace("@", "-AT-", $Value);
}
}
$Body .= "\n-------------------------------------------";
$Body .= "\nHTTP_REFERER: ". $_SERVER['HTTP_REFERER'];
$Body .= "\nHTTP_USER_AGENT: ". $_SERVER['HTTP_USER_AGENT'];
$Body .= "\nREMOTE_ADDR: ". $_SERVER['REMOTE_ADDR'];
$Success = mail($Recipient, $Subject, $Body, $Headers);