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