Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RodrigoTS

PHPMailer dando erro

Recommended Posts

Fatal error: Call to undefined method PHPMailer::SetFrom() in /home/rdzgr127/public_html/enviar.php on line 38

 

<?php

date_default_timezone_set('Brazilia');
$nome = strip_tags(trim($_POST['nome']));
$email = strip_tags(trim($_POST['email']));
$telefone = strip_tags(trim($_POST['telefone']));
$assunto = strip_tags(trim($_POST['assunto']));
$arquivo = $FILES['arquivo'];
$tamanho = '10.000.000';
$tipos = array('*');
if(empty($nome)){
$msg = 'O nome é Obrigatório';
}elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)){
$msg = 'Digite um E-mail válido';
}elseif(empty($telefone)){
$msg = 'O Telefone é Obrigatório';
}elseif(empty($mensagem)){
$msg = 'A Mensagem é Obrigatória';
}elseif($arquivo['size'] > $tamanho){
$msg = 'O limite do tamanho do arquivo é de 10megas';
}
else
require('phpmailer/class.phpmailer.php');
$mail = new phpmailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Port = 587;
$mail->Host = 'smtp.rdzgrafica.com.br';
$mail->Username = 'contato@rdzgrafica.com.br';
$mail->Password = '********';
$mail->SetFrom('contato@rdzgrafica.com.br', 'Rdz Grafica');
$mail->AddAddress('rdzgrafica@gmail.com', 'Rdzgrafica');
$mail->Subject = 'Formulario de Contato';
$body = "<strong>Nome : </strong>($nome) <br />
<strong>Email : </strong>($email) <br />
<strong>Telefone : </strong>($telefone) <br />
<strong>Assunto : </strong>($assunto) <br />
<strong>Arquivo : </strong>($arquivo) <br />";
$mail->MsgHTML($body);
$mail->AddAttachment($arquivo['tmp_name'], $arquivo['name']);
if($mail->Send())
$msg = 'Sua Mensagem foi enviada com Sucesso';
else
$msg = 'Sua Mensagem não foi enviada, tente novamente.';
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

apenas traduza..

 

O método SetFrom em PhpMailer não existe, o PHP eh auto-explicativo ;-

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não aconselho ficar dando control c control v nesses tuto não.. e PHPMailer tem la seus bugs, use google docs ou um serviço gratis que tem um monte.

Compartilhar este post


Link para o post
Compartilhar em outros sites

PHP é case sensitive

 

e sendo assim

 

$mail->setFrom('from@example.com', 'First Last'); //$mail->setFrom();

é diferente de:

 

$mail->SetFrom('contato@rdzgrafica.com.br', 'Rdz Grafica');  //$mail->SetFrom()

 

Deve ser isso o problema!

 

E a solução

 


$mail->setFrom('contato@rdzgrafica.com.br', 'Rdz Grafica'); // s em minúsculo

 

 

Referência:

 

https://github.com/PHPMailer/PHPMailer/blob/master/examples/smtp.phps

 

https://github.com/PHPMailer/PHPMailer

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça um teste com a versão de exemplos, configure os campos necessários, se não funcionar entre em contato com o suporte para verificar qual é a porta correta:

 

25, 465 ou 587

 

 

Outra opção é habilitar o debug

 

//Enable SMTP debugging
// 0 = off (for production use)
// 1 = client messages
// 2 = client and server messages
$mail->SMTPDebug = 2;

 

 

Boa sorte!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.