2010-03-24 4 views
2

Hay Я использую PHPMailer для отправки некоторых простых писем, однако функция SetFrom(), похоже, не работает, хотя код, который я использую прямо из phpmails Docs (http://phpmailer.worxware.com/index.php?pg=examplebmail)Ошибка PHPMailer с вызовом неопределенного метода PHPMailer :: SetFrom()

Здесь моя ошибка

Call to undefined method PHPMailer::SetFrom() 

и мой сценарий

require_once('inc/phpmailer/class.phpmailer.php'); 
$mail = new PHPMailer(); // defaults to using php "mail()" 
$body = $message; 
$mail->SetFrom('[email protected]', 'tell a friend'); 
$mail->AddAddress($to_email, $to); 
$mail->Subject = "tell a friend"; 
$mail->MsgHTML($body); 
$mail->Send(); 

Любые идеи?

EDIT

оказывается функция SetFrom() оленья кожа существовать в моей версии PHPMailer, я могу установить эти значения с помощью

$mail->From = ''; 
$mail->FromName = ''; 

ответ

8

Осторожно, есть несколько версий PHPMailer вокруг. Я никогда не понимал, что есть. Во всяком случае, this download из PHPMailer 5.1 определенно содержит setFrom метод:

public function SetFrom($address, $name = '',$auto=1) { 
+1

Выключает функцию SetFrom() не существует (как указано в сообщении об ошибке), однако я могу установить переменные $ From и $ FromName, используя $ mail-> From = 'x'; – dotty

+1

@dotty вы, вероятно, используете другую (более старую) версию PHPMailer. –

0

Я согласен с Пекка; Я загрузил PHPMailer с here, использовал ваш код как есть (ну, я назначил переменные $ to_email, $ to и $ message), и представление было успешным.

Попробуйте использовать предложенную версию Pekka или эту, и, надеюсь, ваша проблема исчезнет.

Смежные вопросы