Отправка электронной почты через CakePHP - электронная почта конфигурации переопределяет электронную почту отправителя
У меня проблемы с отправкой электронной почты через торт php 2.7. Ну, электронная почта пересылается на желаемый адрес электронной почты, но при получении адреса электронной почты отправителя возникает проблема, так как вместо адреса электронной почты отправителя я получаю адрес электронной почты для настройки. У меня есть проблема в получении, как решить эту проблему. Был бы признателен, если кто-нибудь может предложить что-нибудь по этому вопросу.
Некоторые части кода:
Контроллер страниц
public function sendEmail($data) {
$email = new CakeEmail();
$email->config('gmail');
$email->emailFormat('html');
$email->sender($data['User']['email_address'],$data['User']['name']);
$email->from(array($data['User']['email_address'] => $data['User']['name']));
$email->to('configuration_email');
$email->replyTo($data['User']['email_address']);
$email->subject($data['User']['subject']);
$message = 'Name: '.$data['User']['name'].'<br> How Did You Hear: '. $data['User']['how_did_you_hear'].
'<br>Message: '.$data['User']['body'];
if ($email->send($message))
{
return true;
}else {
return false;
}
}
email.php
public $gmail = array(
'host' => 'ssl://smtp.gmail.com',
'port' => 465,
'username' => 'configuration_email',
'password' => 'password',
'transport' => 'Smtp'
);
Поле "От" использует конфигурационную электронную почту вместо $data['User']['email'].
Заранее спасибо!
1 ответ
Gmail позволяет отправлять сообщения от имени адреса электронной почты, отличного от вашего адреса Gmail, только если у вас уже есть эта учетная запись электронной почты и она правильно зарегистрирована в вашей учетной записи Gmail.
Инструкции описаны в Gmail: отправка почты с другого адреса или псевдонима:
Я являюсь пользователем Gmail или Служб Google и отправляю сообщения с внешнего адреса.
- Нажмите на механизм в правом верхнем углу.
Выберите Настройки.
- Нажмите вкладку Аккаунты и импорт.
- В разделе "Отправить письмо как" нажмите " Добавить другой адрес электронной почты".
- В поле "Адрес электронной почты" введите свое имя и альтернативный адрес электронной почты, которым вы владеете.
- Введите SMTP-сервер (например, smtp.domain.com), свое имя пользователя в этом домене и пароль для этой учетной записи. Вам также может потребоваться изменить настройки порта или настройки SSL (обратитесь к другому провайдеру, если вам нужна эта информация).
- Нажмите Добавить аккаунт >>
Откройте другую учетную запись и нажмите ссылку в сообщении, отправленном Gmail, или введите код подтверждения в разделе "Аккаунты и импорт" в настройках Gmail.
- Если Gmail отправил письмо с подтверждением, а вы его не получили, попробуйте проверить в папках "Спам" или "Массовая почта" сообщение от account-verification-noreply@google.com, чтобы убедиться, что письмо не попало туда.