PHP mail

tada

Hola mediavideros, estoy programando un simple formulario que envia un mail con PHP y me estoy volviendo loco. Este es el código:

$body = "Mensaje: " . $_POST["msg"];
		
$cabeceras = 'From: loremipsum' . "\r\n";
$cabeceras .= 'Cc: pepe@gmail.com' . "\r\n";
		
if(mail('maria@gmail.com', 'Contacto', $body, $cabeceras))
	$enviado = true;

La cuestión viene en que estoy enviando formularios de prueba a dos correos que son mios (los dos de gmail). El que está como copia (pepe@) siempre recibe el correo sin embargo el de maria@ no. Si quito el CC de la cabecera, maria@ lo recibe siempre..

En una de las pruebas me llegaron a los dos, y ya no ha vuelto a pasar..

A que puede ser debido? ya he mirado que no esten en la bandeja de spam. Los dos correos reciben emails normalmente así que es un poco raro :S

glolg

No se como seguirá el código, pero yo pondría la función fuera del condicional, aunque debería de ejecutarlo.

tada

La cosa es que ahí se acaba el código xD

Ahora mismo me funciona bien y me llega a los dos emails, pero me tiene un poco descolocado el tema. Yo sospecho que el fallo no debe venir del código, porque de otra forma no me lo explico.

De todas formas, aunque ahora funciona, si alguien tiene alguna idea o le ha pasado algo parecido quisiera saber a que se debe, porque no puede ser que funcione cuando quiera..

Thanat0s

¿Por qué no haces?

$enviado=mail('maria@gmail.com', 'Contacto', $body, $cabeceras);

¿Y te ahorras el if?

Seguramente te esté fallando por esto:
Nota:

Si no se reciben los mensajes enviados, intentar el uso de sólo LF (\n). Algunos agentes de transferencia de correo de baja calidad en Unix reemplzan LF por CRLF automáticamente (lo que conlleva doblar CR si se usa CRLF). Esto debería ser el último recurso, si bien no cumple con » RFC 2822.

1 respuesta
Merkury

#4 "Si no se reciben los mensajes enviados, intentar el uso de sólo LF (\n). Algunos agentes de transferencia de correo de baja calidad en Unix reemplzan LF por CRLF automáticamente (lo que conlleva doblar CR si se usa CRLF). Esto debería ser el último recurso, si bien no cumple con » RFC 2822."

what?

1 respuesta
Thanat0s

#5 Básicamente habla del salto de línea de Windows y Unix.

A mi me han petado scripts por este motivo.

1 respuesta
Merkury

#6 Ahhh vale joder XD

Usuarios habituales

  • Merkury
  • Thanat0s
  • tada
  • glolg