Richard_Kamsky
@Richard_Kamsky

Как указать имя отправителя в письме phpmailer?

Всем привет. Сделал отправку формы на почту, но вместо имени отправителя просто написано "Я".
Это я как понял потому, что в setFrom и в addAddress указано моя почта. Но если я в setFrom пишу условно "replyTo@mail.com" письмо не прилетает.
<?php
	use PHPMailer\PHPMailer\PHPMailer;
	use PHPMailer\PHPMailer\Exception;

	require 'PHPMailer/src/Exception.php';
	require 'PHPMailer/src/PHPMailer.php';

	$mail = new PHPMailer(true);
	$mail->CharSet = 'UTF-8';
	$mail->setLanguage('ru', 'PHPMailer/language/');
	$mail->isHTML(true);

	$mail->setFrom('моя почта', 'Test');
	$mail->addAddress('моя почта');
	$mail->Subject = 'Hello';

	$body = '<h1>This mail!</h1>';

	if (trim(!empty($_POST['name']))) {
		$body.='<p>Name: '.$_POST['name'].'</p>';
	}
	if (trim(!empty($_POST['email']))) {
		$body.='<p>Email: '.$_POST['email'].'</p>';
	}
	if (trim(!empty($_POST['url']))) {
		$body.='<p>Url: '.$_POST['url'].'</p>';
	}
	if (trim(!empty($_POST['comment']))) {
		$body.='<p>Comment: '.$_POST['comment'].'</p>';
	}

	if (!empty($_FILES['image']['tmp_name'])) {
		$filePath = __DIR__ . "/files/" . $_FILES['image']['name'];

		if (copy($_FILES['image']['tmp_name'], $filePath)) {
			$fileAttach = $filePath;
			$body.='<p>Image:</p>';
			$mail->addAttachment($fileAttach);
		}
	}

	$mail->Body = $body;
	
	if (!$mail->send()) {
		$message = 'Error';
	}

	$response = ['message' => $message];

	header('Content-type: application/json');
	echo json_encode($response);
?>

Да и вообще как правильно настроить оформление для письма? Как минимум почту отправителя вместо "Я"
  • Вопрос задан
  • 185 просмотров
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Но если я в setFrom пишу условно "replyTo@mail.com" письмо не прилетает.
Так сегодня практически нигде работать не будет, "бай секурити ризон". В лучшем случае письмо попадет в спам.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы