PHP - AddReplyTo Phpmailer no cambia

 
Vista:
sin imagen de perfil

AddReplyTo Phpmailer no cambia

Publicado por Leandro (9 intervenciones) el 25/06/2016 13:34:05
Buenas tardes, tras el consejo de un compañero del foro ya consigo enviar emails desde la web del cliente, tenía que realizarlo con smtp.
El problema ahora es que quiero que cuando el correo llega, el "From" cambie y no aparezca el email que se auntentica en smtp para el envío, si no el email que ya se introdujo en el formulario.
Os dejo el código para que os aclare un poco:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
$nombre = htmlspecialchars($_POST["name"]);
$email = htmlspecialchars($_POST["email"]);
$mensaje = htmlspecialchars($_POST["message"]);
$asunto = htmlspecialchars($_POST["subject"]);
$empresa = htmlspecialchars($_POST["empresa"]);
$telefono = htmlspecialchars($_POST["telefono"]);
 
include("phpmailer.php");
 
$smtp=new PHPMailer();
 
$smtp->IsSMTP();
 
$smtp->CharSet="UTF-8";
 
$smtp->SMTPAuth   = true;
$smtp->SMTPSecure = "tls";
$smtp->Host       = "smtp.live.com";
$smtp->Username   = "proyecto@hotmail.com";
$smtp->Password   = "***********";
$smtp->Port       =25;
 
$smtp->SetFrom($email, $nombre);
 
$smtp->AddReplyTo($email, $nombre);
 
$smtp->Subject = "No responder a este mensaje directamente";
 
$smtp->ClearAllRecipients();
 
$smtp->AddAddress("info@prueba.com", "Robot");
 
$smtp->MsgHTML("<b>Nombre: </b>" . $nombre . "<br><b>Email: </b>" . $email . "<br><b>Teléfono: </b>" . $telefono . "<br><b>Empresa: </b>" . $empresa . "<br><b>Asunto: </b>" . $asunto . "<br><b>Mensaje: </b>" . $mensaje);
 
if (!$smtp->Send()) {
    echo "Hubo un error: " . $smtp->ErrorInfo;
} else {
    echo "Mensaje enviado con exito. Gracias";
}
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

AddReplyTo Phpmailer no cambia

Publicado por xve (6935 intervenciones) el 26/06/2016 10:28:35
Hola Leandro, creo que lo haces, bien, quien envia el correo es los datos que pones en el: $smtp->AddAddress

te tiene que decir que lo envía [email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

AddReplyTo Phpmailer no cambia

Publicado por Leandro (9 intervenciones) el 26/06/2016 10:46:35
Si eso es lo que hace,ya que el AddAdress es la dirección a donde quiero que llegue el email,pero si después quieres responder tienes que redactar un nuevo email con los datos que llegaron del formulario,el AddReplyTo se lo pasa por alto.
Otra cuestión,si esto se lo voy a entregar a un cliente,me recomiendas crear una nueva cuenta smtp y no dejar la mía propia que es con la que estoy haciendo las pruebas,verdad?.
Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

AddReplyTo Phpmailer no cambia

Publicado por xve (6935 intervenciones) el 26/06/2016 12:12:45
Hola Leandro, creo que el problema esta en que, el AddReplyTo() lo tienes mal puesto, debería ser el mismo valor que el AddAddress()...

Sobre lo de la cuenta de correo, sin ninguna duda, tu cuenta de correo y contraseña no debería aparecer nunca... siempre tienes que solicitar una cuenta al cliente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

AddReplyTo Phpmailer no cambia

Publicado por Leandro (9 intervenciones) el 26/06/2016 12:37:55
Pero yo lo que quiero que en el AddReplyTo aparezca el email que el usuario ponga en el formulario, por eso tengo la variable $email. Si no lo soluciono lo dejaré como está y en el cuerpo del mensaje pongo todos los datos del formulario,y que el cliente se encargue de enviar el correo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar