Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> функция mail() 
V
    Опции темы
artsb
Дата 8.11.2008, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



Всем привет!

Знаю что таких тем много smile

Помогите разобраться с функцией mail(string $to, string $subject, string $message [, string $additional_headers [, string $additional_parameters]] ).

Вот кусок кода из примера:
Код

$headers = 'From: [email protected]' . "\r\n" .
    'Reply-To: [email protected]' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
$headers .= 'To: Mary <[email protected]>, Kelly <[email protected]>' . "\r\n";
$headers .= 'Cc: [email protected]' . "\r\n";
$headers .= 'Bcc: [email protected]' . "\r\n";

From: - это от кого пришло, а остальные? И что здесь делает To:, если оно есть отдельно? Что ещё здесь можно передать?
Зачем нужен четвёртый параметр?
Как сделать, чтобы вместо мыла, при просмотре почты, отображался текс. (Например, если мыло есть в адресной книге, отображается не мыло, а имя отправителя).

Спасибо.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
seos
Дата 12.11.2008, 05:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 11.11.2008

Репутация: нет
Всего: нет



скачай пример на php .. там све есть и описание всех параметров и как отображать имя вместо мыла( Mary <[email protected]>)
PM MAIL   Вверх
artsb
Дата 17.11.2008, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



Решил не создавать новую тему.

Отправляю письмо так:
Код

mail("адрес моей почты", $subject, $message, 'MIME-Version: 1.0' . "\r\n".
                    'Content-type: text/html; charset=windows-1251' . "\r\n".
                    'From: '.$name.' <'.$email.'>' . "\r\n");

$name - имя, которое посетитель сайта ввёл в форму.
$email - адрес почты, который ввёл посетитель сайта.

Хочу, чтобы при просмотре почтового ящика, письма выглядели так, как-будто их отправил посетитель сайта со своего почтового ящика, а именно, чтобы в поле 'От кого' было написано имя отправителя и его e-mail адрес.
При использовании приведённого выше кода, имя отопражается правильно, а вот вместо адреса, хранящегося в $email отображаетя адрес сервера на котором находится сайт.
Реально, вообще, подставить другой адрес?


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
ZlojEzh
Дата 17.11.2008, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.10.2005
Где: Киев, Украина

Репутация: 10
Всего: 15



помимо From надо указывать дополнительные заголовки - Reply-to, Sender
PM MAIL ICQ   Вверх
destrd
Дата 17.11.2008, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 1.10.2008

Репутация: 3
Всего: 4



Выдерните класс для отправки писем из какого-нибудь framework'a. Там и отправка файлов будет и проч.
--------------------
Some people, when confronted with a problem, think, "I known, I'll use regular expressions." Now they have two problems.        -- Jamie Zawinski in comp.lang.emacs
PM MAIL ICQ   Вверх
ksnk
Дата 17.11.2008, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата

Реально, вообще, подставить другой адрес? 

Реально! 

Ситуация, однако, странная. Было бы более представимо, если бы полностью замещался заголовок From на собственный, это бы значило, что mail все равно подставляет свой From, не взирая на его наличие, а так даже не могу вообразить. Может вирус?  smile 

У Денвера есть забавная фенечка - эмулятор-затычка для sendmai'а. Отправленное письмо сохраняется на диске и его можно просмотреть хоть аутлуком, хоть текстовым редактором и проверить в точности чего-ж там нагенерилось. Очень удобно для отладки.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
artsb
Дата 17.11.2008, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



Цитата

надо указывать дополнительные заголовки - Reply-to, Sender

Добавил Reply-to - ничего.
Про Sender ничего не нашёл. Не знаю как егго записывать. Можно пример?

Цитата

Выдерните класс для отправки писем из какого-нибудь framework'a. Там и отправка файлов будет и проч. 

Тоже вариант. Но лучше, когда понимаешь что делаешь. smile

Добавлено через 1 минуту и 44 секунды
Цитата

У Денвера есть забавная фенечка - эмулятор-затычка для sendmai'а. Отправленное письмо сохраняется на диске и его можно просмотреть хоть аутлуком, хоть текстовым редактором и проверить в точности чего-ж там нагенерилось. Очень удобно для отладки. 

Можете описать как?


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
destrd
Дата 17.11.2008, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 1.10.2008

Репутация: 3
Всего: 4



Цитата(artsb @  17.11.2008,  20:11 Найти цитируемый пост)
Но лучше, когда понимаешь что делаешь. 

Посмотреть как это там реализовано, и сделать похоже, проще и самому.
--------------------
Some people, when confronted with a problem, think, "I known, I'll use regular expressions." Now they have two problems.        -- Jamie Zawinski in comp.lang.emacs
PM MAIL ICQ   Вверх
ksnk
Дата 17.11.2008, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата

Можете описать как? 

Как поставить Денвер? Вообще-то это Виндовая сборка php+Апач+MySql. В принципе - она заточена под отладку веб-приложений локально. Она ставится относительно безболезненно даже при минимальном понимании смысла всех действий по инициализации всего этого добра smile

Сама затычка представляет собой файл sendmail.exe, который уже размещен в том месте, который ожидает установленный Денвером php. Функция mail по умолчанию посылает письма через этот самый sendmail, а этот самый sendmail выкладывает их на диск. То есть самостоятельного смысла затычка не имеет.

В Юниксах, насколько мне не изменяет мой склероз, можно настроить базовый sendmail, чтобы он вел себя точно так-же, то есть складировал письма вместо отправки или вместе с отправкой.

Кстати, почти все примеры в описании функции mail содержат использование заголовка From:. Это наводит на мысль, что проблем с Фромом ни у кого нет smile


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
artsb
Дата 18.11.2008, 09:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



Цитата

Посмотреть как это там реализовано, и сделать похоже, проще и самому. 

Там, насколько мне известно, довольно много мусора. Но всё равно спасибо за совет.

Да не-е-е. Денвер уже стоит. Я спрашиваю как сделать чтобы просмотреть
Цитата

проверить в точности чего-ж там нагенерилось

Но вообще-то, что там смотреть если и так всё видно: имя то, кторое я подставил, а адрес другой. Могу выложить скрин.

Добавлено через 14 минут и 19 секунд
Вот:
user posted image


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
ksnk
Дата 18.11.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



artsb, Все страньше и страньше smile
Код

+-------------------------------------------------------------------------+
| Джентльменский набор Web-разработчика                                   |
| Версия: Денвер-3 2008-01-13                                             |


Про то, что Денверовский sendmail состоит из одного только exe я, видимо, погорячился. Каталог там довольно представительный - 11 файлов ... 

У меня такого эффекта нет. Хотя я посылаю адрес попроще, без угловых скобок. Может в этом дело?






--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
artsb
Дата 18.11.2008, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



Цитата(ksnk @  18.11.2008,  10:25 Найти цитируемый пост)
Может в этом дело?

Скорее всего нет. Т.к. я пытался отправлять просто адрес без имени - то же самое.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
ksnk
Дата 18.11.2008, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



А если просто тупо исполнить кусок из документации
Код

<?php
$to      = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: [email protected]' . "\r\n" .
   'Reply-To: [email protected]' . "\r\n" .
   'X-Mailer: PHP/' . phpversion();

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

?




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
artsb
Дата 18.11.2008, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



ksnk, попробую вечером. Сейчас времени нет.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
artsb
Дата 18.11.2008, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: нет
Всего: 64



ksnk, всё равно :(


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0856 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.