Ir para conteúdo

POWERED BY:

Arquivado

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

Maykel-ctba

[Resolvido] Erro em preg_match?

Recommended Posts

Fala galera!

 

Resolvi atualizar minha biblioteca do PHPMailer esta semana. Só que estou tendo um POBREMINHA.

 

Warning: preg_match() [function.preg-match]: Compilation failed: reference to non-existent subpattern at offset 626 in /Applications/XAMPP/xamppfiles/htdocs/comum/libs/phpmailer/class.phpmailer.php on line 674

Invalid address: esser@gpaprospera.com.br

 

Muito bem, fui verificar a linha do script do phpmailer que está sendo indicada, e é um preg_match - provavelmente de validação do formato do e-mail.

 

  public static function ValidateAddress($address) {
return preg_match('/^(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){255,})(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){65,}@)((?>(?>(?>((?>(?>(?>\x0D\x0A)?[	 ])+|(?>[	 ]*\x0D\x0A)?[	 ]+)?)(\((?>(?2)(?>[\x01-\x08\x0B\x0C\x0E-\'*-\[\]-\x7F]|\\\[\x00-\x7F]|(?3)))*(?2)\)))+(?2))|(?2))?)([!#-\'*+\/-9=?^-~-]+|"(?>(?2)(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\x7F]))*(?2)")(?>(?1)\.(?1)(?4))*(?1)@(?!(?1)[a-z0-9-]{64,})(?1)(?>([a-z0-9](?>[a-z0-9-]*[a-z0-9])?)(?>(?1)\.(?!(?1)[a-z0-9-]{64,})(?1)(?5)){0,126}|\[(?:(/>/>?>IPv6:(?>([a-f0-9]{1,4})(?>:(/>/>?6)){7}|(?!(?:.*[a-f0-9][:\]]){7,})((?6)(?>:(/>/>?6)){0,5})?::(/>/>?7)?))|(?>(?>IPv6:(?>(?6)(?>:(/>/>?6)){5}:|(?!(?:.*[a-f0-9]:)/>/>{5,})(?8)?::(/>/>?>((?6)(?>:(/>/>?6)){0,3}):)/>/>?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?>\.(?9)){3}))\])(?1)$/isD', $address);
 }

 

Só que, até onde sei, o formato de email que estou utilizando está certo :ermm:/>/>

 

Segue também script do envio do e-mail para análise

 

<?php

require_once("comum/libs/phpmailer/class.phpmailer.php");

$corpo = "
	<style>

		h1, h2, h3, h4, h5, h6, ul, li { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; }
		ol, ul { list-style:none; }

		strong { display:block; width:130px; float:left; background:#DEE3E6; margin-right:10px; padding:0 5px; color:#005696; }
		li { clear:both; font-size:11px; margin-bottom:2px; line-height:20px; }
		li ul { margin-bottom:20px; }
		li ul li { background:#F5F5F5; }
		li, h1, h2 { font-family:Arial, Helvetica, sans-serif; }
		h1, h2 { color:#08D; }
		h1 { margin-bottom:20px; padding-bottom:10px; border-bottom:1px dashed #CCC; font-size:20px; letter-spacing:-1px; }
		h2 { font-size:14px; font-weight:bold; margin-bottom:10px; }

	</style>
	<h1><strong>Olá! Você recebeu um e-mail do formulário de contatos do site ".$cliente.". Veja os dados abaixo:</strong></h1>
	<ul>
		<li><strong>Nome:</strong> ".$_POST['txNome']."</li>
		<li><strong>E-mail:</strong> ".$_POST['txEmail']."</li>
		<li><strong>Telefone:</strong> ".$_POST['txTelefone']."</li>
		<li><strong>Mensagem:</strong> ".nl2br($_POST['txMensagem'])."</li>
	</ul>
";

try 
{
	$mail = new PHPMailer(true);

	$mail->IsSMTP();
	$mail->IsSendmail();
	$mail->SMTPAuth   	= true;
	$mail->Port       	= 587;
	$mail->Host       	= "smtp.gpaprospera.com.br";
	$mail->Username   	= "smtp@gpaprospera.com.br";
	$mail->Password   	= "*****";
	$mail->SMTPDebug 	= false;
	$mail->CharSet 		= 'utf-8';
	$mail->Mailer 		= "smtp";
	$mail->FromName   	= "Empresa";

	$mail->AddAddress("esser@gpaprospera.com.br"); 
	$mail->From = "esser@gpaprospera.com.br";
	$mail->Sender = "esser@gpaprospera.com.br";
	$mail->AddReplyTo("esser@gpaprospera.com.br","Empresa");

	$mail->Subject = $_POST["slAssunto"];
	$mail->MsgHTML($corpo);
	$mail->IsHTML(true);

	$enviado = $mail->Send();

	if($enviado)
	{
		header("Location: /ok");
	}

	$mail->ClearAllRecipients();
	$mail->ClearAttachments();

}
catch (phpmailerException $e)
{
	echo $e->errorMessage();
	exit;
}

?>

 

-----

 

EDIT:

Descobri. Na realidade, o problema estava no servidor local que estava utilizando. Coloquei online e funcionou perfeitamente.

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.