Ir para conteúdo

POWERED BY:

Arquivado

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

fell

[Resolvido] Fatal error: Call to a member function MsgHTML() on a

Recommended Posts

ola pessoal

 

eu estou obtendo este erro: Fatal error: Call to a member function MsgHTML() on a non-object in C:\Users\fel\VertrigoServ\www\login\validation.php on line 97

 

alguem sabe como resolver?

estou usando o phpmailer

 

function inserirDados($name, $email, $myPassword, $check) {
$check = filter_var($email, FILTER_SANITIZE_EMAIL);
$string = filter_var($name, FILTER_SANITIZE_STRING);
if (!filter_var($check, FILTER_VALIDATE_EMAIL) && !filter_var($string,FILTER_VALIDATE_STRING)) {
	echo "Dados inválidos";
}
else {
	if(repetirDados($email)){

		$name = (string)mysql_real_escape_string($_POST['name']);
		$email = mysql_real_escape_string($_POST['email']);
		$myPassword = mysql_real_escape_string($_POST['myPassword']);

		$pwdHasher = new PasswordHash(8, FALSE);

		$hash = $pwdHasher->HashPassword( $myPassword);

		$pwd = new PasswordHash(8, FALSE);
		$linkHash = $pwd->HashPassword( $email);

		$registerquery = mysql_query("INSERT INTO users (username, email, pass, activationLink) VALUES ('".$name."', '".$email."', '".$hash."' , '".$linkHash."')")
		or die("MySQL Error: ".mysql_error());

		if ($registerquery) {
			echo '<h1>Registo efectuado com sucesso</h1>';
			$pwrurl = "http://localhost/login/home/reset_password.php?usercode=".$linkHash;

			$mailbody = "Dear user,<br><br>If this e-mail does not apply to you please ignore it. It appears that you have requested a password reset at our website www.yoursitehere.com<br>
		To reset your password, please click the link below. If you cannot click it, please paste it into your web browser's address bar.<br> <a href='$pwrurl'>$pwrurl</a>  <br> <br>
		Thanks,\nThe Administration";

			$mail->MsgHTML($mailbody); //linha 97

			$mail->AddAddress($email,"Membro");

			$mail->IsHTML(true);

			if(!$mail->Send()) {
				echo "Deu erro: " . $mail->ErrorInfo;
			} else {
				echo "Enviado com sucesso";
			}


			return true;
		}

	} else
	echo '<h1>Erro no registo</h1>';
	return false;
}
}

 

 

obrigado!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

a variavel $mail, não é um objeto.

 

onde você supostamente está instanciando essa class ?

veja o escopo da variavel dentro da função.

Compartilhar este post


Link para o post
Compartilhar em outros sites

a variavel $mail, não é um objeto.

 

onde você supostamente está instanciando essa class ?

veja o escopo da variavel dentro da função.

 

obrigado willian, realmente o problema era não ter instanciado a classe dentro do if.

 

:clap:

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.