lazuren
@lazuren

Проблеммы с отправкой писем PHPMailer?

Для заказа обратного звонка использую библиотеку phpmailer. На локальной машине все отлично работает и отправляется, а после переноса реальный сервер вот такая ошибка
Письмо не отправлено<br />
<b>Catchable fatal error</b>:  Object of class PHPMailer could not be converted to string in <b>/home
/u112570048/public_html/mail.php</b> on line <b>39</b><br />


Используемый код:
<?php


if($_POST) {

	//Переменные
	$name = $_POST['name'];
	$phone = $_POST['phone'];
	$site = 'RobotsShow.ru';

	require 'phpmailer/class.phpmailer.php';

	$mail = new PHPMailer();

	$mail->isSMTP();

	$mail->Host = 'smtp.yandex.ru';
	$mail->SMTPAuth = true;
	$mail->Username = 'mail@*********.ru'; // логин от вашей почты
	$mail->Password = '*********'; // пароль от почтового ящика
	$mail->SMTPSecure = 'ssl';
	$mail->Port = '465';

	$mail->From = 'mail@**********.ru';
	$mail->FromName = 'Перезвони';
	$mail->AddAddress('callback@**********.ru');

	$mail->isHTML(true);

	$mail->Subject = $name . ' просит перезвонить!';
	$mail->Body = "Поступил заказ обратного звонка с сайта {$site} : <br/> <b>Имя:</b> {$name}<br/><b>Телефон:</b> {$phone}<br/><b>E-mail:</b> {$_POST['email']}";
	$mail->AltBody = "Поступил заказ обратного звонка с сайта: \r\n Имя: {$name}\r\nТелефон: {$_POST['phone']}\r\nE-mail: {$_POST['email']}";

	if( $mail->send() ) {
		echo 'Письмо отправлено!';
	}else{
		echo 'Письмо не отправлено ';
		echo 'Ошибка: ' . $mail->errorInfo;
	}
}
  • Вопрос задан
  • 757 просмотров
Решения вопроса 1
@Dvoeglazov
Если Host от smtp.yandex.ru, то Username - это почта яндекса (Password ее пароль), где From, обязательно та же почта яндекса, что и в Username, иначе не отправиться.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы