2010-10-21 14 views
7

Estoy tratando de agregar una respuesta a la dirección de mi anuncio publicitario php y simplemente pone de "mí" y responde a mi dirección.phpmailer no puede agregar una respuesta a la dirección

¿Alguna idea de lo que estoy haciendo mal? He agregado $ mail-> AddReplyTo. Quiero que responda al remitente del formulario web.

$name = $_POST['name']; 
$telephone = $_POST['telephone']; 
$email = $_POST['email']; 
$message = $_POST['message']; 

$body    = file_get_contents('phpmailer/contents.html'); 
$body    = eregi_replace("[\]",'',$body); 
$body    = eregi_replace("<name>", $name,$body); 
$body    = eregi_replace("<telephone>", $telephone, $body); 
$body    = eregi_replace("<email>", $email, $body); 
$body    = eregi_replace("<message>", $message, $body); 




$mail->IsSMTP(); // telling the class to use SMTP 
$mail->Host  = "smtp.gmail.com"; // SMTP server 
        // enables SMTP debug information (for testing) 
              // 1 = errors and messages 
              // 2 = messages only 
$mail->SMTPAuth = true;     // enable SMTP authentication 
$mail->SMTPSecure = "ssl";     // sets the prefix to the servier 
$mail->Host  = "smtp.gmail.com";  // sets GMAIL as the SMTP server 
$mail->Port  = 465;     // set the SMTP port for the GMAIL server 
$mail->Username = "[email protected]"; // GMAIL username 
$mail->Password = "xxxxx"; 

$mail->AddReplyTo($email, $name); 


$address = "xxxx.net"; 

$mail->AddAddress($address, "Contact form"); 

$mail->Subject = " Contact Form"; 

Respuesta

2

Algo es tratar de asegurarse de que sus $email y $name las variables se pasan correctamente (añadir algunas declaraciones de depuración hacer eco a cabo). No estoy seguro si lo ha hecho o si está verificando si el formulario se ha publicado o no. Pero ese sería el primer paso.

De mi trabajo con PHPMailer y GMail, no funcionan bien. En cambio, sugeriría probar el script phpGMailer. Funciona muy bien para GMail. Vea si eso no soluciona sus problemas.

ACTUALIZACIÓN

Pensando en ello, no creo que GMail permite el cambio de la dirección de ReplyTo a menos que la cuenta de Gmail ha activado la autorización para esa cuenta. No estoy 100% seguro de esto, pero sé que a través de la interfaz web eso no es posible.

De tema

Me gustaría evitar el uso de eregi_replace que se deprecia. Yo usaría preg_replace en su lugar. Aquí hay una versión actualizada para que pueda actualizar su código:

$body    = file_get_contents('phpmailer/contents.html'); 
$body    = preg_replace("~[\]~",'',$body); 
$body    = preg_replace("~<name>~i", $name,$body); 
$body    = preg_replace("~<telephone>~i", $telephone, $body); 
$body    = preg_replace("~<email>~i", $email, $body); 
$body    = preg_replace("~<message>~i", $message, $body); 
+0

gracias Brad, eso me ahorró mucho tiempo, creo que tiene razón con respecto a la respuesta de Gmail. Piensa que solo tendrá que vivir con eso. – Roscoeh

Cuestiones relacionadas