#php
#php
Вопрос:
У меня есть что-то вроде этого:
$to = '...';
$subject = '...';
$msg = '...';
$from = 'From: "me<me@domain.com.com>"';
mail($to, $subject, $msg, $from);
Когда я отправляю электронные письма, в поле «от» всегда есть я @my.serverinfo.com
Как мне избавиться от информации о сервере?
РЕШАЕМАЯ ЗАДАЧА Избавилась от лишних кавычек. Спасибо @Daniel (и другим)! Я прочитаю больше о заголовках электронной почты. Кроме того, я не хочу отправлять анонимное электронное письмо: me@domain.com это был просто пример.
Комментарии:
1. Дорогой мой, потому что он показывает тебе адрес электронной почты. вы указали from в качестве своего адреса электронной почты.
2. Почему вы хотите отправлять анонимные электронные письма?
3. Есть совершенно веские причины для того, чтобы установить заголовок From на что-то отличное от значения по умолчанию в php.ini. Особенно, если вы используете общий хост, имя хоста в php.ini не будет иметь никакого отношения к вам или вашему веб-сайту. Включение правильного From — это вопрос профессионализма.
Ответ №1:
Как упоминал Дэниел, это, вероятно, проблема с цитатами. Кроме того, если у вас есть доступ к вашей конфигурации PHP, вы можете изменить ее глобально в php.ini
В Windows…
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.yourisp.com
; http://php.net/smtp-port
smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = You@your.serverinfo.com
Или, если вы используете Linux, смотрите ответ @OZ для каталога.
Ответ №2:
В php.ini найдите директиву sendmail_path:
sendmail_path = /usr/sbin/sendmail -t -i -fyour@email.com
Ответ №3:
Помогает ли избавление от кавычек?
$from = "From: me<me@domain.com.com>rn";
Ответ №4:
Вероятно, вам следует немного прочитать о RFC электронной почты (2822) и создать свою собственную строку, содержащую заголовки, которые вы хотите отправить. Это первое место, где вы должны проверить. Там вы можете узнать, находится ли заголовок, который вы хотите отправить, в официальном RFC, а затем написать внутри все, что вы хотите.