И это решило проблему! PHP mail () прекрасно работает после этого.

ользую функцию php mail () для простого процесса отправки по электронной почте ввода контактной формы соответствующему лицу. Странно то, что форма всегда использовалась для обработки электронной почты, но однажды все это прекратилось, теперь функция возвращает false, но не выдает никакой ошибки.

Сайт находится на общем хосте. Когда спрошено об этом, они рекомендовали, чтобы я использовал реле SMTP xx.xxx.x.xxx

Поправьте меня, если я ошибаюсь, но функция mail () не обеспечивает условия для этого, не так ли? Конечно, это зависит от компьютера HOST, чтобы правильно настроить его реле?

У меня такой вопрос: это похоже на ошибку в конфигурации хоста, или это мой код? Вот пример почтового кода, который я использовал:

$to = "[email protected]"; //to who?
$subject = "Website Contact: $mysubject";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "From: $fname<$email1>\r\n";
$headers .= "Reply-To: $email1\r\n";
$headers .= "Return-Path:$email1\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
$headers .= "Content-Transfer-Encoding: quoted-printable\r\n";
$msg2 = nl2br($msg);

$send = mail($to, $subject, $msg2, $headers); //process mail

if(!$send):
  //error stuff here
endif;

Большое спасибо, Саймон

@eisberg - Я использую пользовательский обработчик ошибок, как это:

//error handler function
function customError($errno, $errstr){
$err = "\n".date('Y-m-d H:m:s')." Error: [$errno] $errstr";
$fh = fopen("errlog.txt", 'a+');
fwrite($fh, $err);
fclose($fh);
}
set_error_handler("customError", E_ALL);

Означает ли это, что мне нужно изменитьset_error_handler("customError", E_ALL); вset_error_handler("customError", -1); ?

Ответы на вопрос(6)

Ваш ответ на вопрос