Ver Mensaje Individual
  #4 (permalink)  
Antiguo 10/01/2009, 15:35
franco190453
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: ¿Cómo comprobar si se puede enviar un email?

sumolari:
Para responder tu primara pregunta, debo, antes que nada, hacerte ver que NO hay dos servidores de correo que sean identicos y por ende
podrian haber servidores de correo deficientes que acepten el primer paso aun cuando NO se pueda enviar el correo.
En este caso el servidor recibe el correo y posteriormente fracaza en el envio efectivo.
Tu codigo o script retorno un true ante el if( con la funcion mail.
Pero que si el correo llego al destinatario solo lo puede saber LOS ADMINISTRADORES DEL SERVIDOR DE CORREO.
Un servidor de correo profesional como las decenas que hay en el mercado muy probablemente te rechazan el correo y por ende tu script o codigo reporta un false y tu recibes la respuesta en tu navegador que el correo ha fracazado en su primer y fundamental fase; Nuevamente los asuntos entre el servidor tuyo y el servidor del destinatario es asunto totalmente diferente.
Espero esta parte haya contestado satisfactoriamente tu primera pregunta.
Tu segunda pregunta, definitivamente se refiere al manejo del script o codigo. Es decir que si tu recibes la direccion de correo via una base de datos o de un form y por ende un html o xhtml o php pagina entonces para evitar que, en su primer paso, el correo sea rechazado, debes validar cada uno de los inputs, me refiero especificamente a direccion de correo, asunto, mensaje y cabeceras!!!. Hay una inmensa cantidad de pequeños codigos o scripts que validan direcciones de correos en lo referente a que contengan al menos un @ y un punto, etc etc.
Ahora, si se diera el caso que un usuario te haya dado una direccion de correo inexistente, ejemplo [email protected] (Supongamos que no existe en google.com); en este caso el servidor de correo lo tomara como bueno y procedera al segundo paso para despues recibir un rechazo total, del cual tu desde tu scipt o codigo NO tendras forma de saberlo a menos que tengas total control del servidor de correo que pretendia enviar hacia google.com
Espero esto haya contestado, al menos parcialmente, tu segunda pregunta.
Finalmente, es valido decir que el tema de los correos, su diseño, configuracion y envio exitoso es un tema profundo, interesante y lleno de muchas cosas interesantes.
Saludos
Franco
P.S. Como te podrias imaginar el envio de documentos adjuntos al correo plantea un gran reto para el programador.
Es curioso que cuando alguien pretende enviar un documento adjunto, de pronto todo parece bien y la funcion mail() no reporta error y el archivo nunca fue realmente adjuntado. Esto te debiera indicar que existe una metodologia especifica e interesante en la forma estandarizada que se deben adjuntar archivos.