Foros del Web » Programando para Internet » PHP »

Como hacer para que mi formulario no envie los correos como Anonymous

Estas en el tema de Como hacer para que mi formulario no envie los correos como Anonymous en el foro de PHP en Foros del Web. Hola amigos, he estado mirando en internet, pero no encuentro nada al respecto. He hecho un form con el siguiente código: <?php $mail='dirección correo a ...
  #1 (permalink)  
Antiguo 10/04/2011, 12:08
 
Fecha de Ingreso: abril-2011
Mensajes: 19
Antigüedad: 13 años
Puntos: 1
Como hacer para que mi formulario no envie los correos como Anonymous

Hola amigos, he estado mirando en internet, pero no encuentro nada al respecto.
He hecho un form con el siguiente código:
<?php

$mail='dirección correo a donde manda';


$nombre = $_POST['nombre'];
$apellidos = $_POST['apellidos'];
$propiedad = $_POST['propiedad'];
$telefono = $_POST['telefono'];
$mp = $_POST['mp'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];

$thank="gracias.php";

$message = "
nombre:".$nombre."
apellidos:".$apellidos."
propiedad:".$propiedad."
telefono:".$telefono."
mp:".$mp."
email:".$email."
mensaje:".$mensaje."";

if (mail($mail,"Formulario de Consulta",$message))
Header ("Location: $thank" );

echo 'mensaje enviado correctamente';

?>

El caso es que en la bandeja de entrada, los correos me entran como anonymous, y quiero que me entren con el correo que ponen en el campo email, como lo hago?
Seguro que es una tontería, pero no caigo, gracias de antemano por la ayuda.
Carlos.
  #2 (permalink)  
Antiguo 10/04/2011, 13:33
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Hola.

Te faltan los headers. -Aquí- tienes un ejemplo completo de un envío a través de mail().


Un saludo.
  #3 (permalink)  
Antiguo 12/04/2011, 03:23
 
Fecha de Ingreso: abril-2011
Mensajes: 19
Antigüedad: 13 años
Puntos: 1
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Gracias por tu respuesta Uikekarallo, el caso es que los emails me llegan correctamente, la información de cada campo me llega correctamente en los emails, todo correcto, solo que necesito que el remitente en vez de que sea "anonymous" sea el email que pone en el campo "email" el que rellena el form. Así que si puedes echarme una mano te lo agradeceré.
Gracias.
Carlos.
  #4 (permalink)  
Antiguo 12/04/2011, 03:32
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Como te he dicho, te faltan los headers:

Código PHP:

$headers 
"MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: ".$nombre." ".$apellidos." <".$email.">\r\n";
$headers .= "Reply-To: ".$email."\r\n";

// y luego

mail($mail,"Formulario de Consulta",$message,$headers); 

Saludos.
  #5 (permalink)  
Antiguo 12/04/2011, 04:31
 
Fecha de Ingreso: abril-2011
Mensajes: 19
Antigüedad: 13 años
Puntos: 1
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Gracias por tu ayuda uikekarallo, me funciono, salvo que ahora me entran dos veces en la bandeja de entrada!!!
Otra cosa y ya abusando de tu sabiduría, si quiero que me entren los correos con una imagen como cabecera, como lo hago:

$ruta_img="ATM/caso1/circulos_.jpg";
/*$ruta_img=$_GET["direccion"]."/".$_GET["imagen"];*/


Es correcto?¿
Gracias.
CArlos.
  #6 (permalink)  
Antiguo 12/04/2011, 04:45
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Cuando llames a la función mail(), hazlo de la siguiente manera:

Código PHP:

if( !mail($mail,"Formulario de Consulta",$message,$headers) )
{
  
// error
}
else
{
  
// ok

Para mostrar (sin attachment) una imagen debe tener la ruta completa (http://www.tuweb/img/tuimagen.jpg) y va en el cuerpo del mensaje con un <img src="" alt="" />.


Un saludo.
  #7 (permalink)  
Antiguo 12/04/2011, 09:30
 
Fecha de Ingreso: abril-2011
Mensajes: 19
Antigüedad: 13 años
Puntos: 1
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Nada, no me funciona:
<?php

$mail='[email protected]';



$nombre = $_POST['nombre'];
$apellidos = $_POST['apellidos'];
$propiedad = $_POST['propiedad'];
$telefono = $_POST['telefono'];
$mp = $_POST['mp'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];

$thank="gracias.php";

$message = "
<img src="midominio...etc...."/>.
Los datos recibidos son:
nombre:" .$nombre."
apellidos:" .$apellidos."
propiedad:" .$propiedad."
telefono:" .$telefono."
mp:" .$mp."
email:" .$email."
mensaje:" .$mensaje."";



$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: ".$email."\r\n";
$headers .= "Reply-To: ".$email."\r\n";
Header ("Location: $thank" );
// y luego

mail($mail,"Formulario de Consulta P11",$message,$headers);


?>

se me queda colgado el php, no me manda el email y no me llama a la pagina gracias.
Y otra cosa que me hace es que antes me mandaba los campos en diferentes lineas, ahora me lo manda todo en una linea.
Gracias por tu ayuda!!
  #8 (permalink)  
Antiguo 12/04/2011, 10:09
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Veamos...

Cita:
se me queda colgado el php, no me manda el email y no me llama a la pagina gracias.
Debido a esta línea: $message = "<img src="http://www.etc.com/etc.jpg"/>. Si vas a utilizar comillas, recuerda escaparlas de esta manera: $message = "<img src=\"http://...\" />.

También puedes utilizar comillas simples ('').

Cita:
Y otra cosa que me hace es que antes me mandaba los campos en diferentes lineas, ahora me lo manda todo en una linea.
Antes enviabas el mail en texto plano, ahora le estás dando formato: $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
No lo había visto, pero mejor utiliza charset=utf-8.

Para enviar el e-mail correctamente, tendrás que poner saltos de línea:

Código PHP:

$message 
"
<p><img src='midominio...etc....' alt='' /></p>.
<p><br /></p>
<p>Los datos recibidos son:</p>
<p>
nombre:" 
.$nombre."<br />
apellidos:" 
.$apellidos."<br />
propiedad:" 
.$propiedad."<br />
telefono:" 
.$telefono."<br />
mp:" 
.$mp."<br />
email:" 
.$email."<br /><br />
mensaje:" 
.$mensaje
Ahora prueba, y vete dándole la forma que deseas al mensaje.


Un saludo :)
  #9 (permalink)  
Antiguo 12/04/2011, 10:30
 
Fecha de Ingreso: abril-2011
Mensajes: 19
Antigüedad: 13 años
Puntos: 1
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Mil gracias uikekarallo, funciono perfecto!!!
Te debo una :)
  #10 (permalink)  
Antiguo 12/04/2011, 14:25
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Como hacer para que mi formulario no envie los correos como Anonymous

Nada hombre. Un saludo :)

Etiquetas: correos, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:48.