Forum Webscript.Ru
Программирование => PHP => Тема начата: evgkuz от 03 Февраля 2003, 13:56:40
-
Вот код отправки письма пользователю сайта:
$value = base64_encode($f[myname]);
$recipient = "=?windows-1251?B?$value?= <$f[email]>";
$value = base64_encode("Вам пришло сообщение");
$subject = "=?windows-1251?B?$value?=";
$message = "
Вам пришло сообщение с сайта
Текст сообщения:
$text
Автор сообщения: $name
Обратный адрес - автора сообщения: $email
С уважением,
администрация сайта
";
$headers = "From: <$email>\\n";
$headers .= "Return-Path: \\n";
$headers .= "Content-Type: text/plain; charset=windows-1251\\n";
@mail($recipient, $subject, $message, $headers);
?>
Проблема:
В случае ошибок (например: если такого Email не существует) почтовый сервер должен высылать сообщение об ошибке мне (test@test.ru). Для этого я использовал "...Return-Path..." см выше. Но почему-то сообщение об ошибке отсулается администратору хостинга. Он сильно возмущается, а я не понимаю почему не работает "...Return-Path...".
Кто виноват в этой ситуации ?
Может я не правильно написал программу отсылки сообщений ?
Что нужно прописать в "php.ini", чтобы работал "Return-Path" ???
И в каком месте ???
Админ хостинга сказал, что он пропишет настройки, если я скажу что именно.
-
Высылать почту используя не mail функцию, а напрямую открывая /usr/bin/sendmail или то, что установленно у тебя в качестве почтового сервера.
-
шли почту через сокетное соединение.
Пиши ответы сервера в лог.
-
Stek
А "sendmail" решит проблему с ошибочными письмами, т.е. с "Return-Path" ???
Или там тоже есть спец. настройки. Если они есть, то просьба написать эти настройки.
ThE0ReTiC
У меня нет доступа к логам. И не уверен, что мне его дадут. Я же просто использую хостинг от провайдера.
И не уверен, что это решит проблему. Одно письмо всё равно пройдёт с ошибкой.
-
А ты сам можешь лог сделать?
(для танкистов - лог = текстовый файл, куда записывается информация посылаемая серверу/получаемая от сервера)
Если адрес не правелен - сервер вернет ошибку с определенным номером.
Ее и лови/обрабатывай...
-
Мне посоветовали использовать такую запись:
//...
@mail($recipient, $subject, $message, $headers, "-ftest@test.ru");
//...
?>
Что это за дополнительный параметр \' , "-f..." \' , и где про них можно прочитать ?
-
http://rtfm.vn.ua/unix/soft/sendmail/sendmail-appa.html