Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: mail()
 
 автор: dios™   (16.06.2006 в 18:09)   письмо автору
 
 

что в заголовке не правильно?

 $headers =
                        "Return-path: email@mailserver.ru\n".//емейл для возврата сообщения, если не удается доставить
                        'From: "localhost" <email@mailserver.ru>'."\n".//что в этой строке не правильно?
                        "Reply-To: email@mailserver.ru" 
[/code
отправляем сообщение:
[code]
 mail($mail_to, $mail_subject, $mail_msg, $headers) 

результат:
Warning: mail() [function.mail]: SMTP server response: 501 Bad address syntax 421 Relayhost1.neti.ee Error: too many errors in C:\www\test\311_mail.php on line 85
----
очу чтобы в заголовке в письме, при получении в поле от писался не емейл, а имя отправляющего, в данном случае localhost

   
 
 автор: Саня   (16.06.2006 в 18:24)   письмо автору
 
   для: dios™   (16.06.2006 в 18:09)
 

Вообще-то имя пишется без кавычек:
From: localhost <email@mailserver.ru>

   
 
 автор: dios™   (16.06.2006 в 18:36)   письмо автору
 
   для: Саня   (16.06.2006 в 18:24)
 

неа, не пашет...

   
 
 автор: Саня   (16.06.2006 в 18:49)   письмо автору
 
   для: dios™   (16.06.2006 в 18:36)
 

А, вот в чём дело! Переводы строк нужны такие: \r\n.
$headers = "Return-path: email@mailserver.ru\r\n".
           "From: localhost <email@mailserver.ru>\r\n".
           "Reply-To: email@mailserver.ru";

   
 
 автор: dios™   (16.06.2006 в 18:59)   письмо автору
 
   для: Саня   (16.06.2006 в 18:49)
 

неа, и даже не в этом :(
если в заголовок From написать только один емейл, то все ок, а так не получается :(

   
 
 автор: valenok   (16.06.2006 в 20:51)   письмо автору
 
   для: dios™   (16.06.2006 в 18:59)
 

$headers = "Return-path: email@mailserver.ru\r\n".
"From: <localhost> email@mailserver.ru".
"Reply-To: email@mailserver.ru";

не уверен
И заодно - зачем там тебе переход строк?

   
 
 автор: Unkind™   (16.06.2006 в 22:20)   письмо автору
 
   для: valenok   (16.06.2006 в 20:51)
 


$headers = "Return-path: email@mailserver.ru\r\n";
$headers .= "From: localhost <email@mailserver.ru>\r\n";
$headers .= "Reply-To: email@mailserver.ru";

   
 
 автор: valenok   (16.06.2006 в 22:21)   письмо автору
 
   для: Unkind™   (16.06.2006 в 22:20)
 

А почему та констпукция не работает?
Нет разницы.
Просто так операций больше.

   
 
 автор: dios™   (16.06.2006 в 23:15)   письмо автору
 
   для: valenok   (16.06.2006 в 20:51)
 

хых, как зачем? а как же один заголовок от другого отделять?

   
 
 автор: cheops   (17.06.2006 в 01:16)   письмо автору
 
   для: dios™   (16.06.2006 в 18:59)
 

А если вообще все заголовки убрать работает? А потом добавлять по одному, на котором спотыкается?

   
 
 автор: dios™   (17.06.2006 в 01:18)   письмо автору
 
   для: cheops   (17.06.2006 в 01:16)
 

без заголовоков не работает. минимально нужно заголовок "From: email@server.com" выставить

   
 
 автор: cheops   (17.06.2006 в 01:26)   письмо автору
 
   для: dios™   (17.06.2006 в 01:18)
 

Без заголовков ошибка таже самая? Тогда скорее всего нужно хостера трясти, чтобы он объяснил, как на его сервере отправить почту без проблем.

   
 
 автор: targa   (17.06.2006 в 01:43)   письмо автору
 
   для: cheops   (17.06.2006 в 01:26)
 

А функция mail() сама на хостинге включена?
Потому как мне уже встречался провайдер отключивший ее "в целях соображения безопасности".
Я до сих пор не могу понять чем может навредить mail().

   
 
 автор: cheops   (17.06.2006 в 10:45)   письмо автору
 
   для: targa   (17.06.2006 в 01:43)
 

>Я до сих пор не могу понять чем может навредить mail().
Спамом - хост провайдера за это могут лишить лицензии.

   
 
 автор: dios™   (17.06.2006 в 12:38)   письмо автору
 
   для: cheops   (17.06.2006 в 10:45)
 

Проблемы у меня на моем компе...
В файле конфигурации php.ini в блоке [function mail] я проставил адрес SMTP сервера. для отправки письма мне требуется минимально передать следующие параметры функции mail(), что бы удалось отправить письмо:

<?
$to 
'somebody@server.ru';
$subject 'subject';
$message 'Message';
$headers 'From: <somebody@mailserver.ru>';//или $headers = 'From: somebody@mailserver.ru';
mail($to$subject$message$headers)
?>

Однако я хочу что бы получатель письма получал в поле отпавителя письма не мой email, а то что я напишу, например: Administration MySite.Ru
Для этого я пытался изменить заголовок

$headers = 'From: <somebody@mailserver.ru>';//или $headers = 'From: somebody@mailserver.ru';
//пытался заменить на:
$headers = 'From: "Administartion MySite.Ru" <somebody@mailserver.ru>';

Вот этот заголовк и вызывает ошибку при подаче запроса на SMTP server
P.S. может этот SMTP сервер лагает? Кстати, вот он, SMTP сервер: mail.neti.ee

   
 
 автор: valenok   (17.06.2006 в 12:59)   письмо автору
 
   для: dios™   (17.06.2006 в 12:38)
 

Я же тебе написал отправителя в трегольные скобки а имеил просто так

<? 
$to 
'somebody@server.ru'
$subject 'subject'
$message 'Message'
$headers "From: <somebody> I@server.com"
mail($to$subject$message$headers
?>

   
 
 автор: dios™   (17.06.2006 в 13:03)   письмо автору
 
   для: valenok   (17.06.2006 в 12:59)
 

если бы то, что ты написал еще и работало, то я бы наверное больше не поднимал этот вопрос ;)

   
 
 автор: valenok   (17.06.2006 в 13:08)   письмо автору
 
   для: dios™   (17.06.2006 в 13:03)
 

Я не знаю почему у тебя там не работает.
Денвер у тебя там какой то...

НО имейл пишеться просто так а имя в треугольных скобках.

Попробуй это отослать:


<?php
$to      
'nobody@example.com';
$subject 'the subject';
$message 'hello';
$headers 'From: <valenok> webmaster@example.com' "\r\n" .
   
'Reply-To: webmaster@example.com' "\r\n" ж

mail
($to$subject$message$headers);
?>

   
 
 автор: dios™   (17.06.2006 в 13:10)   письмо автору
 
   для: valenok   (17.06.2006 в 13:08)
 

у меня не денвер, а апач и PHP усатновлены
попробуй это через smtp сервер mail.neti.ee отправить
у меня лично не получается...

   
 
 автор: valenok   (17.06.2006 в 13:16)   письмо автору
 
   для: dios™   (17.06.2006 в 13:10)
 

Если предыдущий код отослать не получилось - звони в тех. поддержку.

   
 
 автор: dios™   (17.06.2006 в 14:54)   письмо автору
 
   для: valenok   (17.06.2006 в 13:16)
 

кому в тех. поддержку звонить?

   
 
 автор: valenok   (17.06.2006 в 18:25)   письмо автору
 
   для: dios™   (17.06.2006 в 14:54)
 

mail.nn.ee

   
 
 автор: Loki   (17.06.2006 в 19:10)   письмо автору
 
   для: valenok   (17.06.2006 в 13:16)
 

ну с такими заголовками немудрено если он не уйдет...
По стандарту требуется указать тип содержимого , кодировку и как содержимое перекодировать. Например, так:
<?
$headers
='From: mail@server.ru\r\n
Content-Type: text/html; charset=windows-1251\r\n
Content-Transfer-Encoding: quoted-printable'
;

   
 
 автор: dios™   (17.06.2006 в 21:10)   письмо автору
 
   для: Loki   (17.06.2006 в 19:10)
 

уклоняемся от темы... мне нужно что бы в поле от кого не высвечивался емейл, а писалось например от Васи Пупкина

   
 
 автор: Ziq   (17.06.2006 в 21:20)   письмо автору
 
   для: dios™   (17.06.2006 в 21:10)
 

--

   
 
 автор: Loki   (17.06.2006 в 22:56)   письмо автору
 
   для: dios™   (17.06.2006 в 21:10)
 


<? 
$headers
='From: Vasya Pupkin\r\n 
Content-Type: text/html; charset=windows-1251\r\n 
Content-Transfer-Encoding: quoted-printable'
;

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования